Specifying Required File Systems
Users can now specify the filesystems required for their jobs by requesting “licenses” for them in their batch scripts. With this new SLURM license feature, a batch job will not start if the specified file system is unavailable due to maintenance or an outage, or if we've detected that it's having performance issues. This will protect your jobs from failures or decreased performance from known issues.
We encourage everyone to use the SLURM license feature to identify only the file systems your jobs use. Requesting filesystems that you don't actually need could make your job be held unnecessarily. In addition, the license usage patterns will help NERSC to better manage and plan for system downtimes.
Note that currently no license is required to use the Burst Buffer.
How to Specify File System Licenses
The syntax for specifying the file system need is a comma-separated list of file systems with the SBATCH keyword of “-L” or “--license=”, for example:
#SBATCH -L scratch1
#SBATCH -L scratch1,project
For simplicity, you can use SCRATCH to represent your scratch directory $SCRATCH, which is located either in /scratch1 or /scratch2 on Edison, or /cscratch1 on Cori, e.g.,
#SBATCH -L SCRATCH,project
Below is the complete list of file systems on Cori and Edison for which users can request a license for usage. Because we assume that global homes is required for all jobs and stop all jobs when it is not available, there is no license for the home directories.
|Computational System||File System||License|
|Cori||/global/cscratch1||cscratch1 or SCRATCH|
|Edison||/scratch1||scratch1 or SCRATCH|
|Edison||/scratch2||scratch2 or SCRATCH|