On 12/5/2015 11:44 AM, Reuti wrote:
Yes, it will be multiplied too. But how does the job behave in case you want to 
run 8 processes with an MPI job, but only one GPU is installed. Will only one 
process/thread access it in a serial step? Doesn't it imply it to have a number 
of GPUs installed according to the number of slots you request?

You are correct, of course, for standard MPI jobs. Asking for pe=8 is in effect 8 separate jobs that just happen to talk to each other, and only one of those jobs can effectively use the GPU.

I was thinking along the lines of custom MPI or SMP jobs that detect whether the GPU is in use (via CUDA tools or similar), and use the GPU if available, otherwise just use cpus. That would allow one of the 8 processes to use the GPU, and the other 7 to use cpu only.

This might be a fringe use case, though.


Define the gpu complex as consumable JOB, then it won't be multiplied.

Ah, yes, that makes sense. I have it set as YES, not JOB. Thanks for the pointer!

$ qconf -sc | grep gpu
gpu gpu INT <= YES YES 0 0

Should be:

# qconf -sc | grep gpu
gpu gpu INT <= YES JOB 0 0

I will poke at this on Monday and hopefully not mess things up too badly... :-)

Rajil, does this help you as well? I think this answers the same question(s) that I had.

-Dj


_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users

Reply via email to