本文章是我使用slurm系统时常用的一些命令,记录于此,方便查询
查看可用节点信息
查看可用节点信息可使用sinfo命令,命令详细参数如下
| 1 | Usage: sinfo [OPTIONS] | 
其中常用的有-p和-q,分别代表查看特定分区和特定优先级。
查询结果中PARTITION 表示分区,NODES 表示结点数,NODELIST 为结点列表, STATE 表示结点运行状态。其中,idle 表示结点处于空闲状态,alloc 表示结 点已经分配了一个或多个作业。
提交作业
使用srun命令
srun命令使用示例:
| 1 | srun -N 2 -n 24 -p debug -q debug programname < inputfile | 
其中N表示申请节点数,n表示总进程数,c表示每个核分配的进程数,q表示任务分区(不同任务分区可运算时间不一样),q表示qos任务优先级,inputfile表示屏幕输出保存的文件(不指定也可)。
使用批处理作业命令sbatch
先创建一个sh脚本文件,然后写入
| 1 | !/bin/bash | 
具体参数如下
| 作用 | 命令 | 
|---|---|
| 指定任务名称 | #SBATCH -J name | 
| 指定队列/分区 | #SBATCH -p cpu | 
| 指定 QoS | #SBATCH –qos=debug或者#SBATCH -q debug | 
| 最长运行时间 | #SBATCH -t 5:00 | 
| 指定节点数量 | #SBATCH -N 1 | 
| 指定每个CPU 核心进程数 | #SBATCH –cpus-per-task=4 | 
| 指定每个节点进程数 | #SBATCH –ntasks-per-node=24 | 
| 输出文件 | #SBATCH -o test.out | 
查看作业状态
使用squeue命令
取消作业
使用scancel命令,示例:
| 1 | scancel [jobid] | 
查看之前作业
使用sacct命令
v1.5.2