slurm和作业调度

等待上个任务执行成功再执行任务(任务依赖)

2019-11-13 23:07:09 admin 1179

等待上个任务执行完再执行任务,用以下参数

--dependency=afterok:xxxxx(XXXXX为任务ID)


这里以cn-long分区为例:

目录在:/lustre2/teach_pkuhpc/example/s10_ctrl

1、执行获取脚本:

[test_pkuhpc@login12 s10_ctrl]$  pkurun-cnlong 1 1 sleep 1   

Submitted batch job 1094807

2、修改查看脚本:

[test_pkuhpc@login12 s10_ctrl]$ mv   job.srp000753  job-org.srp

修改脚本job-org.srp sleep生成的时间为200如下:

[test_pkuhpc@login12 s10_ctrl]$ cat job-org.srp

#!/bin/bash

#SBATCH -J sle000753

#SBATCH -p cn-long

#SBATCH -N 1 

#SBATCH -o sle000753_%j.out

#SBATCH -e sle000753_%j.err

#SBATCH --no-requeue

#SBATCH -A test_g1

#SBATCH --qos=testcnl

#SBATCH -c 1

pkurun  sleep 200

3、修改生成的脚本

[test_pkuhpc@login12 s10_ctrl]$ cp job.srp000753 job-dep.srp

[test_pkuhpc@login12 s10_ctrl]$ vi job-dep.srp 

查看修改的脚本

[test_pkuhpc@login12 s10_ctrl]$ cat job-dep.srp 

#!/bin/bash

#SBATCH -J sle000753

#SBATCH -p cn-long

#SBATCH -N 1 

#SBATCH -o sle000753_%j.out

#SBATCH -e sle000753_%j.err

#SBATCH --no-requeue

#SBATCH -A test_g1

#SBATCH --qos=testcnl

#SBATCH -c 1

pwd ;date;sleep 30

4、提交任务:

[test_pkuhpc@login12 s10_ctrl]$ sbatch job-org.srp

Submitted batch job 1094878

5、提交依赖任务:

[test_pkuhpc@login12 s10_ctrl]$  sbatch --dependency=afterok:1094878 job-dep.srp 

Submitted batch job 1094879

6、查看任务提交结果

图片关键词

可以看出在等待上个任务完成

7、查看输出结果 

图片关键词

——————————————————————————————————————————————————————

不正确的结果

8、复制job-org.srp为 job-bad.srp,并修改内容如下

[test_pkuhpc@login12 s10_ctrl]$ cp job-org.srp job-bad.srp

[test_pkuhpc@login12 s10_ctrl]$ vi  job-bad.srp

[test_pkuhpc@login12 s10_ctrl]$ cat job-bad.srp 

#!/bin/bash

#SBATCH -J sle000753

#SBATCH -p cn-long

#SBATCH -N 1 

#SBATCH -o sle000753_%j.out

#SBATCH -e sle000753_%j.err

#SBATCH --no-requeue

#SBATCH -A test_g1

#SBATCH --qos=testcnl

#SBATCH -c 1

pkurun  sleep 200

sdfafwfw

9、重复步骤4-7会出现如下结果:

图片关键词

需要用scancel 或者pkucancel取消这个任务。任务不能执行

首页
资源&收费
集群
成果
问答