我一直在努力使用CUDA加快处理作业的时间。通常这很简单,但是我遇到了一个相当有趣的问题。我们正在使用slurm来安排我们的工作,通过添加CUDA代码并启用它的编译,它使单个工作时间减少了一半。在查看GPU上的负载时会出现问题。在启用CUDA之前,我们可以在每个节点上运行6个作业。但是,启用CUDA后,我们每个节点只能运行2个作业-每个GPU上运行1个作业。
最初,我以为提交脚本有问题,我去尝试添加:
--ntasks-per-node=6
提交命令。
这将返回错误说明:
sbatch: error: Batch job submission failed: Requested node configuration is not available
这使我相信我的slurm.conf配置不正确。任何帮助将不胜感激。我无法完全发布slurm.conf,但可以查看任何设置和/或根据建议进行更改。
编辑:在填写标签之前,偶然按下回车键即可提交问题。
答案 0 :(得分:0)
事实证明,在slurm.conf中有一个隐藏的gres = gpu:1。删除此选项使我们(在我们的示例中,由于CPU负载原因而受到限制)可以向具有一个K80 GPU的节点提交最多六个CUDA + OpenGL作业。