在集群上提交作业的代码

在集群上提交作业的代码

我使用以下代码在集群上提交作业,但我不知道这些代码的含义。如果可能的话,有人可以逐行解释一下以下代码的含义吗?

#!/bin/bash
#PBS -N NAME_OF_JOB
#PBS -l nodes=1:ppn=20
#PBS -l matlab_user=1
#PBS -l matlab_lic=20
#PBS -l min_walltime=1:00
#PBS -q small
#PBS -S /bin/bash
##PBS -V
##PBS -m abe
#PBS -j oe
#
cd $PBS_O_WORKDIR
cat $PBS_NODEFILE
export PATH=/opt/software/matlabr2014a/mdcs/bin:$PATH
matlab -nodisplay -r "code1" -logfile code1.log

谢谢

答案1

如果可能的话,有人可以逐行解释一下以下代码的含义吗?

以“#PBS”开头的命令是批处理作业峰会资源管理器的指令。您的集群应该有一位管理员可以为您指出 PBS 文档。或者,这是我在互联网上找到的一些:https://rcc.its.psu.edu/user_guides/system_utilities/pbs/#overview

其他线路是:

cd $PBS_O_WORKDIR

更改为环境变量 $PBS_O_WORKDIR 中定义的目录

cat $PBS_NODEFILE

将环境变量 $PSB_NODEFILE 中定义名称的文件打印到屏幕

export PATH=/opt/software/matlabr2014a/mdcs/bin:$PATH

更新 $PATH 变量(系统在其中查找可执行文件)以包含目录 /opt/software/matlabr2014a/mdcs/bin(可能是 matlab 可执行文件所在的位置)

matlab -nodisplay -r "code1" -logfile code1.log

运行 MATLAB 执行函数或子例程“code1”并将输出发送到日志文件“code1.log”

答案2

这些命令用于任务调度程序。有几种不同的格式,但这看起来像是我非常熟悉的扭矩格式。

扭矩 -http://docs.adaptivecomputing.com/torque/5-1-0/help.htm

这是扭矩 5 文档。您可能正在运行 2.x、4.x 或 5.x http://docs.adaptivecomputing.com/torque/5-1-0/help.htm#topics/torque/commands/qsub.htm?Highlight=-m%20abe

#PBS -N NAME_OF_JOB => Sets a name that can be identified in `qstat` or `checkjob`
#PBS -l nodes=1:ppn=20 => Requests 20 tasks, (1 node with 20 processors, 2 nodes with 10 processors ect...)
#PBS -l matlab_user=1 
#PBS -l matlab_lic=20 
#PBS -l min_walltime=1:00 => The job should run for at least 1 minute
#PBS -q small => => queue or class you administrator has configured
#PBS -S /bin/bash => Shell to use
##PBS -V => Commented out, exports environment variables to batch job
##PBS -m abe => Commented out, specifies when mail should be sent (abort, begin, end)
#PBS -j oe => Combine stdout and stderror into one directory

cd $PBS_O_WORKDIR => Environment variable of where the job runs
cat $PBS_NODEFILE => prints out the output of the spool. 

相关内容