如何为Slurm作业指定每个内核的最大内存

问题描述

我要为slurm中的批处理作业指定每个内核的最大内存量

我可以看到两个sbatch内存选项:

--mem=MB      maximum amount of real memory per node  required by the job.

--mem-per-cpu=mem   amount of real memory per allocated cpu required by the job.

这两个选项都符合我的需求

有关实现此目标的任何建议

解决方法

您可以使用--mem=MaxMemPerNode来使用该节点中作业的最大允许内存。如果在群集中进行了配置,则可以使用MaxMemPerNode查看值scontrol show config

在特殊情况下,设置--mem=0还将使作业可以访问每个节点上的所有内存。(这在异构集群中并不理想,因为将仅使用节点中最低的内存值对于所有已分配的节点)。

如果在群集中配置,--mem-per-cpu=MaxMemPerCPU可用于启用每个CPU允许的最大内存。