Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

slurm与pbs对比

1
2
3
4
5
6
7
8
9
10
11
12
[liupei@cg 2zk]$ cat sub.slurm 
#!/bin/bash
#SBATCH -J gf1cnn #作业名是 gf1cnn
#SBATCH -p v3_ib #提交到 v3_ib 分区
#SBATCH -N 1 #使用一个节点
#SBATCH -n 1 #cpu数
#SBATCH --cpus-per-task 24 #每个进程占用24个cpu核心
#SBATCH --gres=gpu:1 #申请1块gpu
#SBATCH -o gf1cnn.out #将屏幕输出结果保存到当前文件夹的 gf1cnn.out

source activate cnn #切换python环境
./run_bass.sh 13 #执行我的 ./run_bass.sh 程序

slurm并行超算

查看模块

1
2
3
4
5
6
7
8
# 载入远程复制 module
module load papp_cloud/2.6.18/2.6.18-cjj
# 载入预装的 python module
module load anaconda/3-Python3.6.5-fgl
# 查看可用 module
module avail 或 module avail anaconda
# 查看分区
sinfo

并行的slurm脚本

1
2
3
4
5
6
7
8
#!/bin/bash
#SBATCH -p v3_ib
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -c 24

#srun matlab <testCascade.m
matlab -nodisplay < matlab_parfor.m

参考文献:CHICAGO

作业操作

说明 SLURM PBS
提交作业脚本 sbatch run.slurm qsub run.pbs
查看作业状态 squeue qstat
追踪作业 scontrol show job 1234
取消作业 scancel 1234 qdel 1234

作业/节点详细信息查询-scontrol

  1. 查看分区信息
    scontrol show partition 节点名称
    scontrol show partition debug
  2. 查看节点信息
    scontrol show node 节点名称
    scontrol show node comput1
  3. 查看作业信息
    scontrol show job 作业ID
    scontrol show job 15
  4. 删除作业
    scancel 作业ID
    scancel 15

参考文献

pbs系统命令

北京大学的 HPC 教程,REF

pbs常用命令

1
2
3
4
5
6
7
8
9
10
qsub a.pbs    # 提交作业a
qstat -an # 列出队列中所有作业及其分配的节点
qstat -q # 查看所有队列
qstat -Q # 列出队列的一些限制信息
qstat -Qf bdog # 列粗指定队列的所有信息
pestat # 查看当前所有节点的占用状态
# excl 所有cpu已被占用
# busy cpu已接近满负荷运行
# free 部分或全部cpu空闲
# offl 管理员手动指定离线状态

查看当前所有任务的运行状态

1
2
3
4
5
qstat         # 可以查看当前所有任务的运行状态
ch_cumtlp3@mgr:~> qstat
Job ID Name User Time Use S Queue
---------- -------- --------- -------------------
375817.mgr 600470 ch_cumtlp3 155:47:3 R l

作业 375817 在节点 mgr 上运行,作业名称 600470

pbs脚本配置

1
2
3
4
5
6
7
8
-N name:作业名,限15 个字符,首字符为字母,无空格
-o path:重定向标准输出到path
-l resource_list:定义资源列表。
nodes=N:ppn=M:请求N个结点,每个结点M个处理器。
mem =N[K|M|G][B|W]:请求N大小的内存。
cput =N:请求N秒CPU时间;N也可以是hh:mm:ss形式。
-m mail_options:给用户发信;a(作业abort), b(作业开始运行发信);e(作业结束时发信)。若无此选项,默认为a。
-M user_list:定义发给哪些用户,有关此作业的mail

pbs作业例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/sh
#PBS -N rfrk
#PBS -j oe # out put file
#PBS -l nodes=1:ppn=32
#PBS -q l
#PBS -m be
#PBS -M cumtlp@qq.com
cd $PBS_O_WORKDIR

/public3/home/ch_cumtlp3/installed/app/matlab/r2019b/bin/matlab -nodesktop -nosplash -nojvm \
-r "addpath('pcode');main('roi_pixel','rfrk',{'r',{[50,10,500]}}); exit;"

/public3/apps/matlab-2016b/bin/matlab -nosplash -nodesktop -nojvm \
-r "addpath('../../code/'); pbs_mlc(1:4,0.7); exit;"

pbs运行脚本

1
2
3
4
5
6
7
8
qsub test.pbs:提交作业
pbsnodes -l free:以行的行式列出空闲的节点
qstat -q:查看所有队列状态
qstat:查看作业运行状态
状态说明: E:退出; Q:排队;H:挂起; R:运行; C:结束
qstat -an:列出队列中所有作业及其分配的节点
qstat -an 93:显示作业运行在哪些节点上
qdel 93:删除自己的作业

评论