[GE users] m

Reuti reuti at staff.uni-marburg.de
Thu Mar 10 13:00:59 GMT 2005

Hi Ralf,

Ralf Sigmund wrote:
> i am sure this question has been answered before. However I have not 
> been able to find the optimal solution maself so I apologize for asking 
> it again:
> given a SGE 6 cluster with 79 dual cpu machines
> a hierachy of clusterwide queues are defined:
> short_high   with subordinate high,long,low
> high             with subordinate long,low
> long             with subordinate low
> low
> jobs shall be suspended when there are no more free CPUs and additional 
> jobs are submitted into a queue that is higher in the hierachy.
> here are my problems:
> if i do not set a default queue and somone submits 8  jobs the result is 
> as follows:
> node1 has 2 running jobs in queue short_high, 2 suspended jobs in high, 
> 2 suspended jobs in long, ...
> node 2 is idle and waiting for work
> if I add
> -q low
> to /opt/SGE/default/common/sge_request  then jobs without -q parameter 
> are correctly executed in queue low
> however a set of jobs with -q long are executed as follows:
> node1 has 2 running jobs in queue long, 2 suspended queue in low
> node2 has 2 running jobs in queue long, 2 suspended queue in low
> all other nodes are idle.

you could set a sort order for the queues, by giving each type of queue 
a different seq_no (short_high = 10, high = 20, ...), and set the 
queue_sort_method in the schedule to seq_no. As suspended queues are not 
eligible to get a new job, this setup should give you already the 
intended behavior (if I got you in the correct way).

> so the -q setting appears to be additive. Is there an alternative 
> non-additive way to define a default queue?
> i tried to set the queue configuration
> load_thresholds       slots=0
> without any effect and
> load_thresholds       slots<1
> appears to be the wrong syntax.

Correct, the entry "slots=0" means already (for consumables) to send the 
queue to alarm state, if the value of slots is <= 0. For load values the 
relation used is >. You don't need it in your setup I think.

> i found out how to define a global consumable in the complex, but how do 
> i define a per-host consumable?

Define the consumable in the complex definition and attach it to a node 
with "qconf -me <nodename>" by setting complex_values. First I suggest 
to set the seq_no,  see the result and leave this untouched.

Cheers - Reuti

To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
For additional commands, e-mail: users-help at gridengine.sunsource.net

More information about the gridengine-users mailing list