On 12/03/12 12:03, Reuti wrote:
> Am 12.03.2012 um 12:57 schrieb Robert Hutton:
>> Is there a way to attach prio=false by default to any job that doesn't
>> specify a value for it? I note this from the sge_complex(5) man page:
>>
>>> default
>>> Meaningful only for consumable complex attributes (see consumable
>>> parameter above).
>>
>> I've tried requestable FORCED, but this doesn't seem to change the
>> behaviour. I suspect that I'm making a pretty obvious mistake here... ;)
>
> FORCED should exactly do what you want.
>
> What behavior you observe in detail? Long jobs not requesting "priority"
> ending up in shortrun.q?
The problem situation is with many short jobs on an unloaded cluster:
With:
- number of jobs > number of cores offered by the cluster
- "-l priority" NOT specified to qsub
- a runtime < 2 hours (which is the limit for the fastrun.q)
- complex configuration includes:
#name shortcut type relop requestable consumable default urgency
#----------------------------------------------------------------------
priority prio BOOL == YES NO 0 0
Number of cores available is 140.
Command is:
for run in {1..200} ; do qsub -cwd -S /bin/bash -l
h_vmem=1G,virtual_free=100M,h_rt=0:1:0 sleep.sh ; done
sleep.sh just sleeps for 30 seconds.
Behaviour is that both the shortrun.q and longrun.q fill with jobs, with
longrun.q having as many jobs in state "S" as there are slots in the
queue instance of shortrun.q on that host (due to slotwise preemption).
With everything the same as above, but with "priority" requestable set
to FORCED:
Behaviour is that all jobs just sit in the "qw" state and the scheduling
info shows:
(no project) does not have the correct project to run in cluster queue
"bigMem.q"
does not request 'forced' resource "priority" of queue instance
[email protected]
does not request 'forced' resource "priority" of queue instance
[email protected]
[snipped: same for the rest of the queue instances for longrun.q and
shortrun.q]
Queues have complex values:
longrun.q:
complex_values h_vmem=48G,virtual_free=47G,priority=false
shortrun.q:
complex_values virtual_free=12G,h_vmem=13G,priority=TRUE
The behaviour that I find confusing is with requestable set to YES, jobs
still get sent to shortrun.q despite not having "-l priority=true" given
to qsub.
So I guess perhaps that it's not possible to set up a default value for
my "priority" boolean complex attribute without forcing users to always
specify -l priority=true or -l priority=false to qsub. Perhaps I could
set it to FORCED, and put "-l priority=false" into
.../default/common/sge_request file to make it the default?
Thanks again,
Rob
--
Robert Hutton
Senior Systems and Database Administrator
Centre for Genomics and Global Health <http://cggh.org>
The Wellcome Trust Centre for Human Genetics
Roosevelt Drive
Oxford
OX3 7BN
United Kingdom
Tel: +44 (0)1865 287721
_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users