☰
SLURM配置服务器一
2026/10/23 6:44:09 网站建设 项目流程

SLURM配置

    • 一、先把 /etc/slurm-llnlgres.conf 改成这样
    • 二、slurm.conf 也必须同步改
    • 三、cgroup.conf
    • 四、重启并检查
    • 五、然后才是限制用户
    • 六、脚本里这样写
    • 提醒

还没有。你现在的 gres.conf 里没有写Type=,两张卡都只是普通的gpu,脚本里写--gres=gpu:card1:1会报错(找不到这个类型)。

一、先把 /etc/slurm-llnlgres.conf 改成这样

NodeName=yin-PowerEdge-R750 Name=gpu Type=card0 File=/dev/nvidia0 NodeName=yin-PowerEdge-R750 Name=gpu Type=card1 File=/dev/nvidia1

二、slurm.conf 也必须同步改

你用的是/etc/slurm-llnl/目录(Debian/Ubuntu 的包),所以 slurm.conf 在:

nano/etc/slurm-llnl/slurm.conf

找到你的 NodeName 那一行,加上 Gres(其余参数保持你原来的不动):

GresTypes=gpu NodeName=yin-PowerEdge-R750 Gres=gpu:card0:1,gpu:card1:1 ...原有参数... AccountingStorageTRES=gres/gpu,gres/gpu:card0,gres/gpu:card1 AccountingStorageEnforce=limits,qos

gres.conf 和 slurm.conf 里的 Type 必须一致,否则节点会变成drain/inval。

三、cgroup.conf

nano/etc/slurm-llnl/cgroup.conf

加上:

ConstrainDevices=yes

四、重启并检查

systemctl restart slurmctld systemctl restart slurmdsudoscontrol reconfig scontrol shownodeyin-PowerEdge-R750|grep-igres

应该看到Gres=gpu:card0:1,gpu:card1:1。如果节点状态异常:

sinfo-N-lscontrol shownodeyin-PowerEdge-R750|grepReason

五、然后才是限制用户

sacctmgr modify user wherename=用户名setGrpTRES=gres/gpu:card0=0

六、脚本里这样写

#SBATCH --gres=gpu:card1:1

提醒

脚本里指定只是"选卡",不是"限制"。用户随时可以改成card0。真正禁止用户用 0 号卡的是第五步的GrpTRES=...card0=0,而这一步需要 slurmdbd 记账功能开着。先检查:

scontrol show config|grep-iAccountingStorageType

如果输出是accounting_storage/none,第五步不会生效,把输出贴给我,我帮你看怎么开。

补充:如果你不想折腾记账

更简单的办法是直接在 gres.conf 里只暴露一张卡,让 Slurm 根本不知道 card0 的存在:

NodeName=yin-PowerEdge-R750 Name=gpu File=/dev/nvidia1

slurm.conf 里对应改成 Gres=gpu:1。这样所有用户只能用 1 号卡,不用 sacctmgr,也不用写 Type。缺点是这是对所有用户生效,不能只针对某个用户。

只想限制个别用户的话,就用前面的 GrpTRES 方案。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询