NERSCPowering Scientific Discovery Since 1974

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 --license=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.,


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 SystemFile SystemLicense
Cori /global/cscratch1 cscratch1 or SCRATCH
Cori /global/project project
Cori /global/projecta projecta
Cori /global/projectb projectb
Cori /global/dna dna
Edison /scratch1 scratch1 or SCRATCH
Edison /scratch2 scratch2 or SCRATCH
Edison /scratch3 scratch3
Edison /global/cscratch1 cscratch1
Edison /global/project project
Edison /global/projecta projecta
Edison /global/projectb projectb
Edison /global/dna dna