SLURM Reference Manual for HP XC System Software

Comparison with POE
SRUN and AIX's POE (Parallel Operating Environment) both use UNIX environment variables to
manage the resources for each parallel job that they run. Of course, variables with comparable roles have
different names under each system (and both systems have many other environment variables for other
purposes too).
Two differences in detail between environment-variable use by SRUN and POE are noteworthy:
SRUN assigns values to its resource-management variables by means of its own interactive options,
one option for each environment variable (plus extra control options, such as -j). Instead, POE uses
the usual SETENV or EXPORT utilities to assign values to its environment variables.
POE's LoadLeveler ignores many environment variables when it run batch jobs under AIX on LC
machines. SLURM does not ignore the corresponding environment variables when set by SRUN,
even for batch runs.
This chart lists the SLURM (SRUN-set or inferred) resource-management environment variables for
which direct POE counterparts exist. For an explanatory inventory of all SLURM environment variables,
see the separate section (page 40) below.
POE
Variable
Name
SLURM
Variable
Name
SRUN
Option
To Set
Environment
Variable
Role
MP_PROCS(*)SLURM_NPROCS-nTotal processes to run
MP_NODES(*)SLURM_NNODES-NTotal nodes allocated
MP_SAVEHOSTFILE(*)SLURM_NODELIST(inferred)Node list for this job
MP_CHILDSLURM_PROCID(inferred)MP ID of current process
MP_STDOUTMODESLURM_STDOUTMODE-o (lc)Output mode choice
MP_RMPOOL(*)SLURM_PARTITION-pPartition for this job
MP_INFOLEVELSLURMD_DEBUG-dDebug message level
MP_INFOLEVELSLURM_DEBUG-v (lc)Output message level
MP_LABELIOSLURM_LABELIO-lOutput label choice
(*)Ignored by LoadLeveler for batch jobs on AIX machines at LC.
SLURM Reference Manual - 19