[GE issues] [Issue 3276] New - qrsh -inherit should allow -q to select a queue out of the granted ones

reuti reuti at staff.uni-marburg.de
Tue Aug 10 12:07:10 BST 2010


http://gridengine.sunsource.net/issues/show_bug.cgi?id=3276
                 Issue #|3276
                 Summary|qrsh -inherit should allow -q to select a queue out of
                        | the granted ones
               Component|gridengine
                 Version|6.2u5
                Platform|All
                     URL|
              OS/Version|All
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|DEFECT
                Priority|P3
            Subcomponent|clients
             Assigned to|roland
             Reported by|reuti






------- Additional comments from reuti at sunsource.net Tue Aug 10 04:07:09 -0700 2010 -------
Although it is often desired to get slots from only one queue for a parallel job, it's valid to attach the same PE to different queues and
get slots from a mixture of queues. When now the job gets slots from a mixture of slots, there is no means by the application to direct
`qrsh -inherit ...` to the correct queue. SGE will select any on its own of the granted ones. When the parallel application now makes e.g. 2
times `qrsh -inherit ...` calls to the same machine, to fork in each of both the granted slots e.g. 2 processes to get 4 in total, all
processes may end up in the same queue with the same set $TMPDIR.

$ qsub -pe openmpi 5 -masterq all.q at pc15370 -q "*@pc15370" ./mymy.sh 
Your job 1900 ("mymy.sh") has been submitted
$ cat mymy.sh.o1900
pc15370 1 all.q at pc15370 UNDEFINED
pc15370 2 extra.q at pc15370 UNDEFINED
pc15370 2 extra1.q at pc15370 UNDEFINED
TMPDIR=/tmp/1900.1.extra1.q ==> here it might fork 2 processes
TMPDIR=/tmp/1900.1.extra1.q ==> here it might fork 2 processes
TMPDIR=/tmp/1900.1.extra.q
TMPDIR=/tmp/1900.1.extra.q
TMPDIR=/tmp/1900.1.all.q

With the scripts mymy.sh:

#!/bin/sh
cat $PE_HOSTFILE
. /usr/sge/default/common/settings.sh
qrsh -inherit -V pc15370 ./dummy.sh &
qrsh -inherit -V pc15370 ./dummy.sh &
qrsh -inherit -V pc15370 ./dummy.sh &
qrsh -inherit -V pc15370 ./dummy.sh &
wait
./dummy.sh

and dummy.sh:

#!/bin/sh
env | grep TMPDIR
sleep 30


When the application don't intend to use forks, but starts exactly one process with each `qrsh -inherit ...`, all seems to be fine and SGE
take care to distribute them to the ones from the granted pool, although it can't be predicted which of the `qrsh -inherit ...` will end up
in which of the granted queues.

------------------------------------------------------
http://gridengine.sunsource.net/ds/viewMessage.do?dsForumId=36&dsMessageId=273500

To unsubscribe from this discussion, e-mail: [issues-unsubscribe at gridengine.sunsource.net].



More information about the gridengine-users mailing list