[GE users] how to restrict max 2 jobs per user/user group
reuti at staff.uni-marburg.de
Sat Nov 15 13:40:12 GMT 2008
Am 14.11.2008 um 16:56 schrieb Sangamesh B:
> Hello SGE users,
> In a cluster, installed with Rocks 4.2.1 and SGE 6.0U8,
> following configuration is required:
> Two kinds of users: External & Internal
> Restrictions for External users:
> Not more than two jobs are allowed and each job can take max 16 slots.
> And each job has a restriction of max 72 hours as run time.
> No restriction for Internal Users.
> For this I,
> Created two usersets: EXTERNAL & INTERNAL
> Created a queue external.q with 8 hosts (dual core dual processor) -
> total 32 slots
> Set h_rt to 72 hours in external.q
> But not getting how to set only <=2 jobs should run?
it's not possible for now to limit the number of jobs, although it's
an RFE for a future release of SGE. For now you can limit only the
slots in 6.1/6.2 by an RQS. For 6.0 you are stuck with a workaround
like I posted two days ago:
which even doesn't apply to your case.
> Also this configuration is not a feasible solution in the following
> As internal users are "xusers" for this queue,
BTW: having a user_lists attached to a queue, unlisted users are
automatically excluded. There is no need to mention them also in the
> then some slots out of
> 32 may remain unused.
> To overcome this, if internal users are allowed, then external users
> jobs may stay in waiting state.
> Can someone on the list suggest, how to
> 1. allow only two jobs for external user group
> 2. Internal users jobs should be allowed to run in external.q, if
> slots = (32 - number of slots occupied 2 external users jobs) is
> greater than 0
Even it it would be possbile to set it up right now, I'm not sure
whether it's the best approach. Imagine the external users have two
jobs running and occuyping 8 slots in total. So you would like to
allow internal users to use the remaining 24 slots - unfortunately
these are really long jobs. After some while the two external jobs
end and now they want to run 2 jobs with 16 slots each - so using the
granted number of 32 slots. They have to wait. (If you grant them 32
slots, you could also state that it's up them, how to use these for a
mixture of serial and parallel jobs.)
For a hard-coded setup of the nodes (which you did already as you
mentioned), you could also tell the internal user to run jobs on the
@internal_hgrp nodes, and if they decide to use @external_hgrp, they
can do so if slots are free, but their jobs might get suspended when
the external users decide to run a job there.
Is this feasible?
To unsubscribe from this discussion, e-mail: [users-unsubscribe at gridengine.sunsource.net].
More information about the gridengine-users