刚刚接触到slurm集群管理系统,有几点心得想写出来与大家一起分享,后续可能也会有更新,所以先写一下基本的常用命令。
sinfo:查看节点的运行状态,运行此命令得到如下结果:
上图列出了集群各个分区各个节点的运行状况:
在此主要关注最后两列信息:
state展示了各个分区的运行状况:
idle表示分区空闲;mix表示分区已经被占用,但是仍有可用资源,这时候可以通过scontrol show node
node01命令来进一步查看具体分区节点的运行情况:
上面展示了节点名称、CPU占用情况以及内存的使用情况,当然也有每个core的线程数等等信息。
free –gh用来查看登陆节点的运行情况,最有用的就是内存的使用量和剩余量:
top命令能够展示当前用户的cpu占用情况
需要注意的是第三行展示的CPU是以百分数形式展示的,其中97.5id指的是剩余的CPU百分比。
squeue查看所有用户的任务的运行状态,
上图展示了job编号,运行job所使用的分区名称,job名称等等信息,我们最为关注的应该只有ST这一列,它展示了各个工作的运行状态,其中R代表RUN;PD代表挂起,如果任务处于挂起状态,则显示任务被挂起的原因。用户可以根据这个原因来判断自己的作业脚本是否写对了。除此之外,使用 squeue 配合不同参数可以过滤显示的内容,例如
squeue -l: 以长列表显示更多信息。
squeue -u username: 仅显示属于用户 username 的任务。
squeue -t state: 仅显示处于state 状态的任务。
具体信息可以通过squeue –help命令查看。
关于删除任务也有几个常用的命令:
scancel jobid: 删除 jobid的作业。
scancel -u username: 删除username 的全部作业。
scancel -s state: 删除处于state 状态的作业
当然具体的命令也可以通过scancel –help进行查看。
网友评论