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.

Reminder: You must specify a Slurm Partition in your jobscript for all job types: -p nameYou must also specify a maximum wallclock time limit for your job (up to a permitted maximum time): -t timelimit

See table below.

CSF3 Slurm Partitions and Compute Resources
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: -C skylake

NEW: 78x Cascadelake nodes (40 cores, 4GB/core) Optional: -C cascadelake or -C csf4

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 -t 4-0

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 -t 0-6

21x Haswell nodes (24 cores, 5GB/core) Optional: -C haswell

28x Skylake nodes (32 cores, 6GB/core) Optional: -C skylake

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: -C cascadelake

9x 2TB nodes (32 cores, 64GB per core) Optional: -C icelake or -C ssd

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 numcores
Required: -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 numcores
Required: -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 numcores
Required: -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 numcores
Required: -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 numcores
Required: -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.

Last modified on October 12, 2026 at 2:37 pm by Chris Grave