distributed-computing - 无法在 Slurm 中分配 GPU
问题描述
我在 Slurm 集群中分配 gpu 资源时遇到问题。
指定1个GPU运行如下图,表示无法分配gres资源。如果不止一个,结果相同。
$ srun --gres=gpu:1 --pty bash
srun: error: Unable to create step for job 73: Invalid generic resource (gres) specification
计算节点的 gres 信息似乎正确显示如下
$ sinfo -o "%20N %10c %10m %25f %10G "
NODELIST CPUS MEMORY AVAIL_FEATURES GRES
gpu_svr[1-4 72 515484 (null) gpu:8
slurm.conf 中的节点配置如下
/etc/slurm/slurm.conf
GresTypes=gpu
NodeName=gpu_svr1 NodeAddr=x.x.x.1 CPUs=72 RealMemory=515484 Sockets=2 CoresPerSocket=18
ThreadsPerCore=2 Gres=gpu:8 State=UNKNOWN
NodeName=gpu_svr2 NodeAddr=x.x.x.2 CPUs=72 RealMemory=515484 Sockets=2 CoresPerSocket=18
ThreadsPerCore=2 Gres=gpu:8 State=UNKNOWN
NodeName=gpu_svr3 NodeAddr=x.x.x.3 CPUs=72 RealMemory=515484 Sockets=2 CoresPerSocket=18
ThreadsPerCore=2 Gres=gpu:8 State=UNKNOWN
NodeName=gpu_svr4 NodeAddr=x.x.x.4 CPUs=72 RealMemory=515484 Sockets=2 CoresPerSocket=18
ThreadsPerCore=2 Gres=gpu:8 State=UNKNOWN
PartitionName=v100 Nodes=ALL Default=YES MaxTime=INFINITE State=UP
这是计算节点上的 gres.conf
gres.conf
NodeName=gpu_svr[1-4] Name=gpu File=/dev/nvidia[0-7]
解决方案
解决了。
以下选项应在 slurm.conf 中说明
SelectType=select/cons_tres
SelectTypeParameters=CR_Core
JobAcctGatherType=jobacct_gather/cgroup
推荐阅读
- android - java.lang.IllegalArgumentException:列“voiceID”不存在
- reactjs - Webpack 3 和 React - 如何引用捆绑包之外的文件?
- c++ - 如果我真的非常想从 STL 容器继承,并且我继承了构造函数并删除了 new 运算符,会发生什么?
- powerbi - 自定义 Power BI Embedded 报表
- java - 在java中使用BFS显示最短路径
- python - 用 OpenCV 检测圆形区域(有很多小物体)
- javascript - 是否可以从渐变或两种颜色之间的范围中选择随机颜色?
- python - 在 python 类中对对象执行计算
- python - 格式化字符串时替换行
- python - 根据张量流中给定的序列长度数组对 3D 张量进行切片