Slurm

Slurm	Moab (Deprecated)	Description/Notes
#SBATCH -A account	#MSUB -A account	Defines the account (bank) associated with the job.
#SBATCH –begin=time	#MSUB -a time	Declares the time after which the job is eligible for execution. See man page for syntax.
#SBATCH -c #	CPUs/cores per task
#SBATCH -d list	#MSUB -l depend=list	Specify job dependencies. See "Setting Up Dependent Jobs" for details.
#SBATCH -D path	#MSUB -d path	Specifies the directory in which the job should begin executing.
#SBATCH -e filename	#MSUB -e filename	Specifies the file name to be used for stderr.
#SBATCH –export=list	#MSUB -v list	Specifically adds a list (comma separated) of environment variables that are exported to the job.
#SBATCH –license=filesystem The default is to require no Lustre file systems	#MSUB -l gres=filesystem #MSUB -l gres=ignore The default is to require all mounted Lustre file systems. Use "ignore" to require no file systems (job can run even if file systems are down).	Job requires the specified parallel Lustre file system(s). Valid labels are the names of mounted Lustre parallel file systems, such as lustre1, lustre2. The purpose of this option is to prevent jobs from being scheduled if the specified file systems are unavailable.
#SBATCH -H	#MSUB -h	Put a user hold on the job at submission time.
#SBATCH -i filename	Specifies the file name to be used for stdin.
#SBATCH -J name	#MSUB -N name	Gives a user specified name to the job.
default	#MSUB -j oe	Combine stdout and stderr into the same output file. This is the default. If you want to give the combined stdout/stderr file a specific name, include the -o flag also.
#SBATCH –mail-type=type (begin, end, fail, requeue, all)	#MSUB -m option(s) (a=abort, b=begin, e=end)	Defines when a mail message about the job will be sent to the user. See the man page for details.
#SBATCH -N #	#MSUB -l nodes=#	Node count
#SBATCH -n # #SBATCH –ntasks-per-node=# #SBATCH –tasks-per-node=#	#MSUB -l procs=# #MSUB -l ttc=#	Task count (Note that `-n` defines the total number of tasks across all nodes whereas `–ntasks-per-node` sets the number of tasks on each node.)
#SBATCH –nice=value	#MSUB -p value	Assigns a user priority value to a job.
#SBATCH -o filename	#MSUB -o filename	Defines the file name to be used for stdout.
#SBATCH -p partition	#MSUB -q queue	Run the job in the specified partition/queue (pdebug, pbatch, etc.).
#SBATCH –qos=exempt #SBATCH –qos=expedite #SBATCH –qos=standby	#MSUB -l qos=exempt #MSUB -l qos=expedite #MSUB -l qos=standby	Defines the quality-of-service to be used for the job.
#SBATCH –requeue #SBATCH –no-requeue	#MSUB -r y #MSUB -l resfailpolicy=requeue #MSUB -r n #MSUB -l resfailpolicy=cancel	Specifies whether or not to rerun the job is there is a system failure. The default behavior at LC is to NOT automatically rerun a job in such cases.
#MSUB -S path	Specifies the shell which interprets the job script. The default is your login shell.
#SBATCH –signal=14@120 #SBATCH –signal=SIGHUP@120	#MSUB -l signal=14@120 #MSUB -l signal=SIGHUP@120	Signaling - specifies the pre-termination signal to be sent to a job at the desired time before expiration of the job's wall clock limit. Default time is 60 seconds.
#SBATCH -t time	#MSUB -l walltime= time	Specifies the wall clock time limit for the job. See the man page for syntax.
#SBATCH –export=ALL	#MSUB -V	Declares that all environment variables in the job submission environment are exported to the batch job.