集群使用qsub与slurm投递任务方法

Posted hongwan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集群使用qsub与slurm投递任务方法相关的知识,希望对你有一定的参考价值。

完整原文:https://hongwan.xyz/archives/

qsub

注释以“#”开头

PBS运行参数,以“#PBS”开头

例子:

#PBS -N bowtie2
#PBS -l nodes=1: ppn=20
#PBS -j oe 
cd $PBS_0_WORKDIR index=/home/Public/Database/human/hg38_old/hg38/Gencode/bowtie2_index/hg38outdir=/home/wangyan/projects/1zx_CHIPseq hps_metastasis_SW480620/1. bowtie
fqdir=/home/wangyan/projects/1zx_CHIPseq_hps_metastasis_SW480620/0. data
for i in SW480_H3_rel do
    bowtie2-p 15-x $index-S $outdir/$i/$i. sam-1<(zcat $fqdir/$i.1. fq. gz)-2<(zc
done

参数

-N :任务名

-l:
nodes :节点数目

ppn:每个结点上使用20个CPU

-j :? 指定合并错误输出和实际输出。如果指定’oe’,则合并到标准输出文件中;如果指定’eo’,则合并到标准错误输出文件中.

投递方法: qsub 脚本名.sh

任务查看:qstat

任务取消:qdel +Job id

slurm

例子

#!/bin/sh
#SBATCH --job-name=S15_T_1.fastqc
#SBATCH -n 1
#SBATCH -c 10
#SBATCH --mem=2gb
#SBATCH -o /disk/zxl/projects/GNEC_LZX/Shell/S15_T/1.FastQC.log
/disk/soft/FastQC/fastqc -t 5 /disk/zxl/projects/GNEC_LZX/0.data/S15_T_1.fq.gz /disk/zxl/projects/GNEC_LZX/0.data/S15_T_2.fq.gz -o /disk/zxl/projects/GNEC_LZX/1.FastQC/S15_T
/disk/soft/FastQC/fastqc -t 5 /disk/zxl/projects/GNEC_LZX/0.data/S15_N_1.fq.gz /disk/zxl/projects/GNEC_LZX/0.data/S15_N_2.fq.gz -o /disk/zxl/projects/GNEC_LZX/1.FastQC/S15_T
echo "1.FastQC has been done!" >> /disk/zxl/projects/GNEC_LZX/Run_log/S15_T.log

参数

--job-name :任务名,最好使用自己姓名,方便大家知道是谁在跑任务

-n: node,节点数目

-c: 核心数

--mem:需要的内存,可以先命令行跑一个测试看看需要多少

投递任务:sbatch 脚本名.sh

查看所有的任务

squeue -o "%i %.30j %.8u %.2t %.8M %.6D %.5C %.5m %.15R %Z" | less -S

查看自己的任务(加上-u是看指定用户任务)

squeue -o "%i %.30j %.8u %.2t %.8M %.6D %.5C %.5m %.15R %Z" -u zxl | less -S

杀掉特定的任务

scancel JobID

tips:

可以把命令在~/.bahrc中用alias命名成简单的命令

alias sqa="squeue -o "%i %.30j %.8u %.2t %.8M %.6D %.5C %.5m %.15R %Z" | less -S"
alias sq=squeue -o "%i %.30j %.8u %.2t %.8M %.6D %.5C %.5m %.15R %Z" -u zxl | less -S"

以上是关于集群使用qsub与slurm投递任务方法的主要内容,如果未能解决你的问题,请参考以下文章

slurm-16.05.3任务调度系统部署与测试

qsub vasp.pbs怎么提前任务

如何在节点上平均分配 slurm 任务?

使用 SLURM 上的所有 CPU

Slurm任务调度系统部署和测试

slurm任务调度系统部署和测试