在Slurm中,是否可以为每个任务分配不同数量的CPU?

问题描述

我正在Slurm集群中运行MPI-over-openmp作业,并且我试图找出一种方法来为每个生成的任务分配不同数量cpu。例如,假设我们运行此作业:

srun --nodes 1 --ntasks 2 --cpus-per-task 2 ./mpi_exe

这将在单个节点中生成2个MPI进程,每个节点具有2个cpu。但是,例如,我想为第一个进程分配3个cpu,在第二个进程分配1个。

您知道实现这一目标的任何方法吗?

解决方法

看看Heterogeneous Jobs。对于您的示例,这应该可以解决问题:

srun -N1 -n1 -c3 : -N1 -n1 -c1 ./mpi_exe