1.slurm作业脚本含义介绍

#!/bin/bash
#SBATCH -J sleep //指定作业名
#SBATCH -p debug //指定队列
#SBATCH --time=00:01:00 //指定运行时间(分钟 ) 注:需要设定为比较准确的时间,否
则调度系统会超时强杀作业。若不设置该参数,继承队列的默认运行时长。请在程序中设置断点,保存中间结果,
防止程序中断或者异常导致中间结果丢失。
#SBATCH -N 2 //请求节点数
#SBATCH -n 2 //请求核心数
#SBATCH --gres=gpu:2 //请求gpu数
#SBATCH -o logs/%j.sleep //标准输出文件 注:若为相对路径,则必须存在该目录,否则作业会提
交失败,且无日志输出
#SBATCH -e logs/%j.sleep //错误输出文件 注:若为相对路径,则必须存在该目录,否则作业会提交
失败,且无日志输出
echo ${SLURM_JOB_NODELIST} 作业占用节点列表
echo start on $(date) 开始时间
sleep 100 执行命令
echo end on $(date) 结束时间

2.sleep作业

#!/bin/bash
#SBATCH -J test
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --comment=test
date
hostname
sleep 100
date

3.mpi作业

#!/bin/bash
#SBATCH -J FIRE
#SBATCH -p normal
#SBATCH -N 1
#SBATCH -n 32
#SBATCH -o %j.loop
#SBATCH -e %j.loop
#SBATCH --comment=WRF

echo "SLURM_JOB_NODELIST=${SLURM_JOB_NODELIST}"
echo "SLURM_NODELIST=${SLURM_NODELIST}"

time srun --mpi=pmi2 ./fire_openmpi_slurm 960000
date

4.OpenMPi作业 

#!/bin/bash
#SBATCH -J FIRE
#SBATCH -p normal
#SBATCH -N 1
#SBATCH -n 32
#SBATCH -o %j.loop
#SBATCH -e %j.loop
#SBATCH --comment=WRF


echo "SLURM_JOB_NODELIST=${SLURM_JOB_NODELIST}"
echo "SLURM_NODELIST=${SLURM_NODELIST}"

#module load mpi/openmpi/3.0.0/intel
export PATH=/public/software/mpi/openmpi/3.0.0/intel/bin:$PATH
export LD_LIBRARY_PATH=/public/software/mpi/openmpi/3.0.0/intel/lib:$LD_LIBRARY_PATH
export INCLUDE=/public/software/mpi/openmpi/3.0.0/intel/include:$INCLUDE

date

#export I_MPI_PMI_LIBRARY=/opt/gridview/slurm17/lib/libpmi.so
#export I_MPI_PMI_LIBRARY=/opt/gridview/slurm17/lib/libpmi2.so

time srun --mpi=pmi2 ./fire_openmpi_slurm 960000
date

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐