Cpus=0 is effectively shorthand for Cpus=all there is no way to assign a slot to have 0 cpus, since there is no way to run a program that uses doesnât use the CPU. Also, HTcondor currently doesnât support fractional cpus. so the minimum you can assign is cpus=1 If you want to have one slot with a GPU and minimal, cpu and
another slot with all of the cpus and no GPU, then you would do something like this. cpus = $(DETECTED_CPUS)+1 # this gets 1 âbonusâ cpu, since we declared cpus to be detected+1 # we expect the cpu usage to be minimal. slot_type_1_partitionable = false slot_type_1 = cpus=1, mem=20000, gpus=1 # This will get the remainder after 1 cpu and 20000 memory are carved off. slot_type_2_partitionable = true From: HTCondor-users [mailto:htcondor-users-bounces@xxxxxxxxxxx]
On Behalf Of Ali Rajabi Hi everyone, I am trying to configure HTCondor to be able to submit jobs to a GPU server. The jobs will only need to run on GPUs, but the way I have defined each slots, all CPU threads are also available and Condor distribute the process on all CPUs
as well as GPUs. I have 6 GPUs and defined 6 different slots as: slot_type_1_partitionable = false slot_type_1 = cpus=0, mem=20000, gpus=1 num_slots_type_1 = 1 It looks like Condor overrides the "cpus=0" part and make all 32 CPU threads available to the jobs I submit. I would appreciate if anyone could help me make Condor ignore CPUs all together. Best Regards, Ali |