我正在向SLURM队列提交多个作业。每个作业使用1个GPU。我们每个节点有4个GPU。但是,一旦作业运行,它将占用整个节点,从而使3个GPU空闲。有没有办法避免这种情况,以便我可以使用一个GPU将多个作业发送到一个节点?
我的脚本如下所示:
#SLURM --gres=gpu:1
#SLURM --ntasks-per-node 1
#SLURM -p ghp-queue
myprog.exe
答案 0 :(得分:1)
我也无法在不同的GPU上运行多个作业。有助于将OverSubscribe=FORCE
添加到slurm.conf
中的分区配置中,如下所示:
PartitionName=compute Nodes=ALL ... OverSubscribe=FORCE
此后,我能够使用--gres=gpu:1
运行四个作业,并且每个作业都使用了不同的GPU(按预期,第五个作业正在排队)。