...
Column |
---|
Table 2. List of options for PBS Pro and Slurm Option | PBS Pro | Slurm |
---|
Script directive | #PBS | #SBATCH | Job name | -N [name] | --job-name=[name] | Queue | -q [queue] | --partition=[queue] | Accounting | -W group_list=[acct] | --account=[acct] | Wall clock limit | -l walltime=[hh:mm:ss] | --time=[hh:mm:ss] | Select | -l select=[chunk] | --nodes=[chunk] | Node count | -l nodes=[count] | --nodes=[count] | CPU count | -l mpiprocs=[count]
-l ppn=[count]
-l mppwidth=[count] | --ntasks-per-node=[count]
(alternatively use --ntasks option) | OpenMP threads | -l ompthreads=[nthr] | --cpus-per-task=[nthr] | Memory size | -l mem=[MB] | --mem=[mem][M|G|T]
--mem-per-cpu=[mem][M|G|T] | Standard output file | -o [filename] | --output=[filename] | Standard error file | -e [filename] | --error=[filename] | Combine stdout/stderr | -j oe (to stdout) | (this is the default behaviour if --output is used without –-error ) | Copy environment | -V | --export=ALL (default) | Copy environment variable | -v [var] | --export=var | Job dependency | -W depend=[state:jobid] | --dependency=[state:jobid] | Event notification | -m abe | --mail-type=[events] | Email address | -M [address] | --mail-user=[address] | GPU count | -l ngpus=[count] | --gpus-per-task=[count] |
|
To convert the PBS Pro select statement, use the --nodes
and --ntasks-per-node
options. For example, listing 2 shows the Slurm equivalent of the PBS Pro directive shown in listing 1.
...
Column |
---|
Table 3. Common environment variables in PBS Pro and Slurm Environment Variable | PBS Pro | Slurm |
---|
Job ID | PBS_JOBID | SLURM_JOB_ID | Submit directory | PBS_O_WORKDIR | SLURM_SUBMIT_DIR*† | Submit host | PBS_O_HOST | SLURM_SUBMIT_HOST | Node list | PBS_NODEFILE | SLURM_JOB_NODELIST‡ | Job Array Index | PBS_ARRAY_INDEX | SLURM_ARRAY_TASK_ID |
Note |
---|
| * PBS_O_WORKDIR and SLURM_SUBMIT_DIR both contain the name of the working directory from which the user submitted the job. When using Slurm it is not necessary to explicitly change to this directory, as this is done by default. † When the --export=NONE option is used (as recommended) it is not defined. ‡ PBS_NODEFILE points to a file containing the nodes allocated to the job. SLURM_JOB_NODELIST contains a regular expression listing the nodes. For example:
SLURM_JOB_NODELIST=nid000[32-39]
To expand the nodes explicitly, use the following command: scontrol show hostnames $SLURM_JOB_NODELIST
|
|
...