Frontier Slurm Pinning

This note summarizes the current Slurm CPU-pinning guidance used by the Frontier Copper examples and launch wrappers.

Purpose

The goal of the Frontier pinning layout is to:

  • keep Copper service threads on a small reserved core set

  • keep application ranks off those service cores

  • make the launch behavior easy to verify from Slurm output

Launch Behavior

The Frontier Copper launcher starts one cu_fuse process per node and uses:

  • srun --ntasks-per-node=1 --cpus-per-task=2 --cpu-bind=verbose,none

  • taskset -c <physcpubind>

This lets Slurm place the helper task while taskset enforces the final Copper service-core placement inside that task.

Verification

The simplest checks are:

  • confirm the launcher prints the configured physcpubind value

  • confirm Slurm shows the application cpu-bind=MAP output for the expected rank layout

  • confirm the Copper service cores are not present in the application binding map

Operational Guidance

  • Keep the Copper service-core list small and explicit.

  • Keep the application binding list explicit on Frontier runs.

  • Avoid sharing Copper service cores with the workload.

  • Treat 1,2 as the primary Frontier default unless local site guidance requires a larger reserved set.