微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过集群中的 slurm 运行 python 脚本?

如何解决如何通过集群中的 slurm 运行 python 脚本?

在带有 slurm 的服务器上配置 jupyter 的正确方法是什么?阅读docs后,我正在通过这样的slurm执行我的python脚本(我不确定这是否有效):

$ srun -n 1 --time=02:00:00 --cpus-per-task=14 --mem=64gb --part=cluster-job --gres=gpu:rtx2080ti:1 python ./src/main.py

然后,我得到:

srun: job 2216877 queued and waiting for resources

当我这样做时:

(base) [user@cluster ~]$ squeue -u user390284

我明白了:

JOBID PARTITION     NAME     USER ST       TIME  NODES NODELIST(REASON)
2216877 cluster-job   python user390284 PD       0:00      1 (Resources)

这是运行我的脚本的正确方法吗?当我检查 htop 时,我没有看到任何进程正在运行。看来我的进程卡住了。在我的脚本中使用 slurm 的正确方法是什么?

解决方法

这是在具有 rtx2080ti GPU 的计算节点上请求交互式会话的正确方法。但正如 Slurm 告诉您的那样,您的作业已提交,srun 将阻塞,直到 Slurm 找到 14 个 CPU、64GB 和一个 GPU 可供您使用。在此之前,squeue 会将您的工作显示为待处理 (PD)。

运行 htop 只会向您显示在登录节点上运行的进程,您不会看到您提交的进程,除非您的集群只有一个节点恰好也是登录节点。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。