[GE users] SGE Array Task Question.

cbalways cbalways at gmail.com
Fri Jan 29 18:51:36 GMT 2010

    [ The following text is in the "iso-8859-1" character set. ]
    [ Your display is set for the "ISO-8859-10" character set.  ]
    [ Some special characters may be displayed incorrectly. ]

Yet another approach would be to use the exclusive scheduling, which became available starting 6.2u3.


- Chansup

On Thu, Jan 28, 2010 at 5:55 PM, templedf <dan.templeton at sun.com<mailto:dan.templeton at sun.com>> wrote:
It would technically be possible, but it would require some
configuration changes.  You'd basically want to create a queue for these
jobs that only has one slot per host.  You can then submit the array job
against that queue, and as long as the number of tasks is <= the number
of hosts, you will only get one per host.  You could probably actually
allow the queue to contain all hosts and then submit the array job with
a resource request for the desired host list, e.g. -l
h=host1|host5|host11|host17.  That way your job only runs on the
selected hosts, and the queue guarantees that you only get one per
selected host.

The downside to the technique is that it could be easily confounded.  If
for some reason one of the hosts isn't available, then that host's job
would end up on another host.

An alternative approach might be to submit the array job as a parallel
job instead.  It would require writing a master task to distribute your
slave tasks to the nodes via qrsh -inherit, but it would give you
control over how many processes get run per host.


On 01/28/10 14:39, wlee_hess wrote:
> Hi group,
> I've got a developer I'm working with who uses SGE and the DRMAA interface.  Her problem and questions are below.  We would like to know if what she would like to do is possible with SGE?  We're running both 6.1u4 and 6.2u5 con-currently at this time. Looking at the way SGE works, I don't think we can do this, but if there is a way to do this, then that would be great.
> ==============================================
> PROBLEM: m-nodes need to run exactly 1 copy of script file S. I would like to know IF it is possible and if so HOW to submit an sge array job that meets the following requirements. Given a range of nodes (node list), a work directory, and a script file S, run exactly 1 copy (and no more) of the script file on each and every node in my node list. If I encounter errors, I will return the appropriate exit code (i.e. 100) to allow the array task to be requeued.
> I know how to individually submit to the SGE for each and every node in a range of nodes, but this takes too long. I also know how to run an array job, but I ONLY want ONE copy of my script file to run. Is it possible to do this?
> ==============================================
> Thanks in advance.
> Regards.
> Wayne Lee
> ------------------------------------------------------
> http://gridengine.sunsource.net/ds/viewMessage.do?dsForumId=38&dsMessageId=241606
> To unsubscribe from this discussion, e-mail: [users-unsubscribe at gridengine.sunsource.net<mailto:users-unsubscribe at gridengine.sunsource.net>].


To unsubscribe from this discussion, e-mail: [users-unsubscribe at gridengine.sunsource.net<mailto:users-unsubscribe at gridengine.sunsource.net>].

More information about the gridengine-users mailing list