如何使用 SLURM 获取 GPU (GRES) 分配报告

Posted

技术标签:

【中文标题】如何使用 SLURM 获取 GPU (GRES) 分配报告【英文标题】:How to get GPU (GRES) Allocation Reports using SLURM 【发布时间】:2016-10-06 05:46:24 【问题描述】:

我阅读了我们可以使用的 slurm 文档(在设置会计之后) sacct --format="JobID,AllocCPUS,**ReqGRES** 获取 GRES 请求的统计信息。我还使用 gres.conf 配置了我的 GPU(有 2 个),但是对于 ReqGRESAllocGRES,此命令始终返回 0。有任何想法吗? 提前致谢

【问题讨论】:

【参考方案1】:

我认为你不是 root 用户的原因有很多检查

sacct -a -X --format=JobID,AllocCPUS,Reqgres

它有效。

【讨论】:

【参考方案2】:

我总是发现这些报告对 sreport 很有帮助。只需在 gres.conf slurm.conf 中指定 TRES。

$sreport -tminper cluster utilization --tres="gres/gpu" start=2019-05-01T00:00:00
--------------------------------------------------------------------------------
Cluster Utilization 2019-05-01T00:00:00 - 2019-05-14T23:59:59
Usage reported in TRES Minutes/Percentage of Total
--------------------------------------------------------------------------------
  Cluster      TRES Name         Allocated              Down         PLND Down              Idle          Reserved           Reported 
--------- -------------- ----------------- ----------------- ----------------- ----------------- ----------------- ------------------ 
gpugrid+       gres/gpu   8186500(70.06%)     17889(0.96%)          0(0.00%)    1289051(22.97%)          0(0.00%)   9693440(100.00%) 

您也可以按用户、按 gres 例如:--tres="gres/gpu:v100"(配置 slurm.conf)等。

【讨论】:

以上是关于如何使用 SLURM 获取 GPU (GRES) 分配报告的主要内容,如果未能解决你的问题,请参考以下文章

如何在多个 GPU 节点上获取分配给 SLURM 作业的 GPU ID?

Slurm 作业不能为多个节点请求 GPU 资源

Slurm无法运行多个sbatch任务

在 Slurm 中,如何批量提交多个实验运行,并一个接一个地连续执行?

解决 SLURM “sbatch:错误:批处理作业提交失败:请求的节点配置不可用”错误

如何使用 SLURM 停止计算节点?