On Tue, 14 Feb 2017, William Hay wrote:
...
qsub -ac Template=GPU -l gpu=1 script

Your jsv could spot that a Template had been requested and fill in sensible defaults based on other requests. If no template is requested users have access to the full power of this fully operational caommand line.

This is sort of along the lines of what we do already to help emulate more interesting forms of parallel job request ("I want 2 compute nodes/8 MPI ranks, launching 4 MPI ranks per node and 6 OpenMP threads per rank"); although, as we're using a client-side JSV, I don't restrict myself to using "-ac" since I can delete the figments of my imagination before they hit the server.

To do this, we've had the concept of a node_type for some years now - a requestable complex, taking the value of something looking like "24core-128G". It's turned out to be pretty useful.

I was thinking about extending it for co-processor cards in general. Adding an optional 3rd element, e.g. "24core-128G-2K80", and combining with a "-l co_k80=<num>" seems to let me derive a job request to allocate fractions of a compute node's CPU and memory (the numerator being the number of cards per node requested, the denominator being the cards per node).


I'm not sure what purpose contexts originally served in Grid engine but AFAICT their only practical use is to allow users to pass info to JSVs without affecting anything important.

I'd be interested to know what contexts were for: I was considering them for something at one point as I was hoping they'd end up in the accounting file. They didn't :(


You can do almost anything in Grid Engine with a combination of JSVs and carefully designed started_methods. The hard question is whether you should.

I appear to have an extreme case of hatred of extraneous boiler plate in job scripts and have been wondering if I've gone way too far. My JSV is pretty big now although, thankfully, that appears to be the main place I'm hiding my queue-related ugly.

Cheers,

Mark
_______________________________________________
users mailing list
users@gridengine.org
https://gridengine.org/mailman/listinfo/users

Reply via email to