本文描述Linux集群的基本Slurm用法。

1. 一个简单的Slurm脚本

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

2. 提交作业

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

3. 列出作业

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

4. 获取作业细节

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

5. Suspend a job (root only)

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

6. Resume a job (root only)

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

7. Kill a job

用户可以杀死自己的作业,root可以杀死任何作业。

Slurm基本用法(入门必看)Slurm基本用法(入门必看)

8. Hold a job

$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (Dependency)
    138      defq   simple  rstober   R       0:16      1 atom01
$ scontrol hold 139
$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (JobHeldUser)
    138      defq   simple  rstober   R       0:32      1 atom01

9. Release a job

$ scontrol release 139
$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (Dependency)
    138      defq   simple  rstober   R       0:46      1 atom01

10. List partitions

$ sinfo
PARTITION AVAIL  TIMELIMIT  NODES  STATE NODELIST
defq*        up   infinite      1  down* atom04
defq*        up   infinite      3   idle atom[01-03]
cloud        up   infinite      2  down* cnode1,cnodegpu1
cloudtran    up   infinite      1   idle atom-head1

11. 作业依赖

首先提交一个简单的作业:

#!/usr/bin/env bash

#SBATCH -p defq
#SBATCH -J simple

sleep 60

Submit the job

$ sbatch simple.sh
Submitted batch job 149

现在,我们将提交另一个依赖于先前作业的作业。 有许多方法可以指定依赖条件,但是“singleton ”是最简单的。 Slurm -d singleton 参数告诉Slurm在之前所有具有相同名称的作业完成之前不要调度此作业。

$ sbatch -d singleton simple.sh
Submitted batch job 150
$ squeue
  JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
    150 defq   simple  rstober  PD  0:00  1 (Dependency)
    149 defq   simple  rstober   R  0:17  1 atom01

前提作业完成后,将调度从属作业。

$ squeue
  JOBID PARTITION NAME USER ST TIME  NODES NODELIST(REASON)
    150 defq   simple  rstober   R   0:31  1 atom01

PS: 

Slurm China社区,群里有很多大牛,感兴趣的同学可以加入。二维码失效了可以看评论区留言加我V。

Slurm基本用法(入门必看)Slurm基本用法(入门必看)