Am 05.12.2015 um 17:12 schrieb Dj Merrill:

> On 12/5/2015 11:02 AM, Reuti wrote:
>> Is gpu set to FORCED on your case?
> 
> No.
> 
> The one major difference between my setup and Rajil is that I just have one 
> single all.q queue defined, with only a few of the hosts having GPUs (and the 
> complex variable gpu=1 set for those hosts).
> 
> One way to do it would be to use a TRUE/FALSE for the gpu value but doing it 
> that way won't ensure that only one job has access to the gpu at the same 
> time.  In other words, if one job only used 8 cpu slots and needed the gpu, 
> nothing would prevent another job from also running on the same host and also 
> trying to the gpu.
> 
> However, assigning gpu as a number (ie, gpu=1 for the one card in the host) 
> also seems to imply that the gpu can only be used by one cpu slot.  If you 
> request multiple cpu slots, it seems to only allow the gpu to be assigned to 
> one of those slots, and can't tell that the other 7 cpu slots may also belong 
> to the same job, if requesting pe_lots=8 and gpu=1 for example.  This makes 
> sense in a way, but ultimately what I am hoping to figure out is how to 
> assign a single gpu to an entire multicpu job per machine, not just to a 
> single cpu slot per machine.

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?

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

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

Reply via email to