List of SLURM Constraints and Licenses
File system licenses for WORK and SCRATCH
Important for partial file system maintenance
Submitted jobs can indicate, which file system must be available upon execution of a job. By default, your batch script requests a license for WORK and SCRATCH. If your job does not require WORK or SCRATCH you can indicate that by setting the licenses to zero. This is particularly useful if either or both file systems are down for maintenance.
#SBATCH --licenses=scratch:0 ## or #SBATCH -L scratch:0
#SBATCH --licenses=work:0 ## or #SBATCH -L work:0
#SBATCH --licenses=scratch:0,work:0 ## or #SBATCH -L scratch:0,work:0
Note that the availability of the licenses (== file systems) will be checked before a job is scheduled for execution. Do not request licenses explicitly, e.g., --licenses=work:1. This may lead to unexpected results.
SLURM constraints on SuperMUC-NG:
| constraint | Meaning |
|---|---|
| fat*n | n fat nodes will be used (useful for mixed jobs) |
| thin*n | n thin nodes will be used (useful for mixed jobs) |
| Use only for special cases: | |
| i0x | Island: Will run only on nodes of thin Island x |
| f0x | Island: Will run only on nodes of fat Island x |
| cold | run on cold islands |
| hot | run on hot islands (connected to adsorbtion coolers) |
Examples:
Single Name: Only nodes which have the specified feature will be used. For example, "--constraint="cold"
AND: The ampersand is used for an AND operator: --constraint="i01&hot"
OR: The vertical bar is used for an OR operator: --constraint="i02|i03"
Matching OR: If only one of a set of possible options should be used for all allocated nodes, then use the OR operator and enclose the options within square brackets. For example: --constraint=[i03|i04|i05] might be used to specify that all nodes must be allocated on a single island, but any of those three can be used.
Node Counts/Multiple Counts: request can specify the number of nodes needed with some feature by appending an asterisk and count after the feature name: "--nodes=16 --constraint=[fat*4&thin*12] indicates that the job requires 4 fat and 12 thin nodes.
Parenthesis: can be used to group like node features together. For example --constraint=[i02|(hot&thin*12)]