Slurm Partitions (Compute Resources)
In Slurm, jobs are submitted to partitions – think of these as job queues for different types of jobs.
In your jobscript, you must specify the partition, number of cores and max “wallclock” time your job is allowed to run for (up to a permitted maximum time.) There is now no default wallclock time – you must specify it.
You may also need to specify other flags depending on which parition you submit to. For example, if using one of the GPU partitions, you’ll need to say how many GPUs you want. The HPC Pool and H200 partitions also require an account code.
The table below provides an overview of the partitions, and the compute resources, currently available in the upgraded CSF3 cluster (Slurm).
The Slurm jobscript template (shown further down this page) gives you a starting point for your jobscript. Much more detail on Slurm jobscript options is available in the sbatch command page and, for users of previous CSF systems, the SGE to Slurm reference.
You will also need to use Slurm commands on the login node: sbatch, squeue, scancel and srun.
-p nameYou must also specify a maximum wallclock time limit for your job (up to a permitted maximum time): -t timelimit
See table below.
| Slurm Partition name | Partition Summary | CPU | Max Wallclock | Compute Resources | Notes | |
|---|---|---|---|---|---|---|
| Parallel Jobs (single node) | ||||||
-p multicore_small |
Single-node parallel (2-40 cores) batch jobs. -n numcores |
Intel | 7 days -t 7-0 |
21x Haswell nodes (24 cores, 4-5GB/core) Optional: -C haswell
28x Skylake nodes (32 cores, 4-5GB/core) Optional: NEW: 78x Cascadelake nodes (40 cores, 4GB/core) Optional: |
1400 Haswell and Skylake cores available (shared with the serial partition below.)
3120 Cascadelake cores now available.. Unless specified, 4GB/core will be allocated no matter which node-type your job runs on. Recommended for jobs of 2 to 40 cores. multicore (see below) is suggested for jobs of 41 to 168 cores. |
|
-p multicore |
Single-node parallel (2-168 cores) batch jobs. -n numcores |
AMD Genoa | 7 days -t 7-0 |
84x AMD nodes (168 cores per node). 8GB RAM per core. | 14,112 cores available in total.
Recommended for jobs of 41 to 168 cores. multicore_small (see above) is suggested for jobs of 2 to 40 cores. |
|
-p interactive |
Serial (1-core) and small parallel (2–28 cores) interactive jobs. Optional: -n numcores
Serial (1-core) batch jobs. |
AMD Genoa | 6 hours -t 0-6 |
2x AMD nodes (168 cores per node). 8GB RAM per core. | 336 cores available in total. srun (interactive), srun-x11 (interactive GUIs) and also sbatch (jobscripts) accepted.
For testing apps on AMD “Genoa”. |
|
| Parallel Jobs (multinode) | -p multinode |
Multi-node parallel (80-1280 cores, in multiples of 40 cores) batch jobs. Required: -N numnodes -n numtasks Optional: -c corespertask |
Intel Cascadelake | 80-560 cores: 7 days -t 7-0
600-1280 cores: 4 days |
Node spec: Cascadelake nodes (40 cores, 4GB/core) | 8,720 cores available in total.
NOT available to free at point of use users (fatpou01) due to core limits. Job size limits will be reviewed in January 2027. |
| Serial Jobs | ||||||
-p serial |
Serial (1-core) batch jobs.
Serial (1-core) interactive jobs. |
Intel | 7 days -t 7-0
6 hours |
21x Haswell nodes (24 cores, 5GB/core) Optional: -C haswell
28x Skylake nodes (32 cores, 6GB/core) Optional: |
1400 cores available in total (shared with the multicore_small partition above).
See also interactive above. |
|
| High Memory Jobs | ||||||
-p himem |
High memory jobs up to 2TB (1-32 cores). Optional: -n numcores |
Intel | 7 days -t 7-0 |
1x 512GB node (16 cores, 32GB per core) Optional: -C haswell
4x 1.5TB node (32 cores, 40GB per core) Optional: 9x 2TB nodes (32 cores, 64GB per core) Optional: |
Job default is 32GB/core unless you ask for more – even if you add a -C constraint! Use --mem=totalG or --mem-per-cpu=numG to request more.High Memory Docs |
|
-p vhimem |
High memory jobs requiring up to 4TB. Optional: -n numcores |
Intel | 7 days -t 7-0 |
1x 4tb node (32 cores, 128GB per core) Optional: -C icelake or -C ssd |
Restricted access – request access | |
| GPU Jobs | ||||||
-p gpuA |
Nvidia A100 GPU batch and interactive jobs. Optional: -n numcoresRequired: -G NUM or --gpus=NUM |
AMD Milan | 4 days -t 4-0 |
Node spec: 4x Nvidia A100s, 80GB GPU RAM, 48x AMD “Milan” host cores, 512GB host RAM (10GB/core) | Max 12 CPU-cores per GPU
19 nodes available = 76 GPUs |
|
-p gpuL |
Nvidia L40S GPU batch and interactive jobs. Optional: -n numcoresRequired: -G NUM or --gpus=NUM |
Intel Xeon Sapphire Rapids | 4 days -t 4-0 |
Node spec: 4x Nvidia L40S, 48GB GPU RAM, 2 x 24-core Intel “Sapphire Rapids” host cores, 512GB host RAM (10GB/core) | Max 12 CPU-cores per GPU
22 nodes available = 88 GPUs |
|
-p gpuA40GB |
Nvidia A100 (40GB) GPU batch and interactive jobs. Optional: -n numcoresRequired: -G NUM or --gpus=NUM |
AMD Milan | 4 days -t 4-0 |
Node spec: 4x Nvidia A100s, 40GB GPU RAM, 48x AMD “Milan” host cores, 512GB host RAM (10GB/core) | Very Restricted Access Max 12 CPU-cores per GPU, 2 nodes available = 8 GPUs |
|
-p gpuH |
Nvidia H200 (141 GB) GPU batch jobs. Optional: -n numcores or -c numcoresRequired: -A accountcode -G NUM or --gpus=NUM |
Intel Xeon Emerald Rapids | 4 days -t 4-0 |
Node spec: 8x Nvidia H200, 141GB GPU RAM, 64 “Emerald Rapids” host cores, 1.5 TB host RAM (24GB/core) | Restricted Access Max 8 CPU-cores per GPU, up to 3 nodes available = 24 GPUs. H200 docs. |
|
-p gpuH_short |
Nvidia H200 (141 GB) GPU batch and interactive jobs. Optional: -n numcores or -c numcoresRequired: -A accountcode -G NUM or --gpus=NUM |
Intel Xeon Emerald Rapids | 1 day -t 1-0 |
Node spec: 8x Nvidia H200, 141GB GPU RAM, 64 “Emerald Rapids” host cores, 1.5 TB host RAM (24GB/core) | Restricted Access Max 8 CPU-cores per GPU, up to 2 nodes available = 16 GPUs. H200 docs. |
|
| HPC Pool | ||||||
-p hpcpool |
Multi-node parallel (120-1000 cores) batch jobs. Required:
-A hpc-proj-code -N numnodes -n numtasks Optional: -c corespertask |
Intel Cascadelake | 4 days -t 4-0 |
Cascadelake nodes (40 cores, 4GB/core) | Restricted Access 2000 cores available in total. HPC Pool docs. |
|
| Interactive Jobs | ||||||
| See interactive above. | ||||||
*Information is correct as of 1st October 2026
Jobscript Template
All jobs must specify the partition name (see above) and wallclock runtime limit (see the various time formats) for the job.
Note that the Slurm lines begin with #SBATCH – not #$ as used on SGE. A common mistake is to use a $ symbol in the Slurm special line. It is NOT #$BATCH.
Single-node CPU Jobs
#!/bin/bash --login #SBATCH -p partitionname # Required (all jobs) - see table above #SBATCH -n numcores # Required (parallel jobs) - defaults to 1 for serial #SBATCH -t timelimit # Required (all jobs) wallclock timelimit. Max permitted is 7 days (7-0) #SBATCH flag resources # See table above for additional high-memory, CPU architecture # and GPU resource flags. # We recommend purging your env module purge module load apps/gcc/someapp/1.2.3 # $SLURM_NTASKS will be set to the number of cores requested above, if your app wants to know. someapp.exe # Or, if running an MPI app, Slurm knows to run $SLURM_NTASKS MPI processes if using mpirun mpirun some_mpi_app.exe
For OpenMP parallel applications you can use:
#!/bin/bash --login #SBATCH -n 1 # 1 task ($SLURM_NTASKS set to 1) #SBATCH -c numcores # cores-per-task ($SLURM_CPUS_PER_TASK set to this) #SBATCH -t timelimit # Max wallclock time # Inform OpenMP how many cores to use export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK some_omp_app.exe
Multi-node CPU Jobs
Please note: the multinode partition is NOT available to free at point of use users (those in fatpou01) due to core limits applied to those users.
You must specify the -N numnodes and -n numtasks flags. You may also add the -c corespertask flag.
For a MPI-only application (no OpenMP capability), where you run an MPI process on every core of each node assigned to your job:
#!/bin/bash --login #SBATCH -N numnodes # Number of compute nodes (minimum is 2) #SBATCH -n numtasks # Number of MPI processes ($SLURM_NTASKS set to this) #SBATCH -t timelimit # Max wallclock time module purge module load apps/gcc/someapp/1.2.3 # Slurm knows to run $SLURM_NTASKS MPI processes if using mpirun. mpirun some_mpi_app.exe
For a “mixed-mode” MPI+OpenMP capable application, where you run a small number of MPI processes but each uses OpenMP to do multicore computation on the compute node:
#!/bin/bash --login #SBATCH -N numnodes # Number of compute nodes (minimum is 2) #SBATCH -n numtasks # Number of MPI processes ($SLURM_NTASKS set to this) #SBATCH -c numcores # cores-per-task ($SLURM_CPUS_PER_TASK set to this) #SBATCH -t timelimit # Max wallclock time module purge module load apps/gcc/someapp/1.2.3 # Say how many cores each MPI process should use for OpenMP processing export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK # Slurm knows to run $SLURM_NTASKS MPI processes if using mpirun. mpirun mpi-mapping-flags some_mpi_app.exe # # For one MPI process per node, use: # --map-by ppr:1:node --bind-to none # # For two MPI process per node (one per socket), use: # --map-by ppr:1:socket
GPU Jobs
Please see the GPU Jobs page.
High-memory Jobs
Please see the High Memory Jobs page.
Submitting Jobs and Checking your Queue
Submit the job using
sbatch jobscript
Check on the status of the job using
squeue
More jobscript options
For much more information on Slurm jobscript options, compared to SGE options, please see the SGE to Slurm reference.
