Aurora and Frontier

Copper is commonly deployed on both Aurora and Frontier. The scheduler, service-core bindings, mount paths, and job launch commands differ slightly by site, so this page provides platform-specific build notes, runtime usage, and example locations.

Platform Quick Reference

Platform

Scheduler

Common module load

Common endpoint family

Common Copper service cores

Aurora

PBS

module load copper

cxi / cxi0

48,49,50,51

Frontier

Slurm

module load ums ums046 copper

cxi://cxi1

1,2 or 1,2,65,66

Starting and Stopping Copper

Platform-specific wrappers are used on each system:

launch_copper_aurora.sh   [-d log_dir_base] [-v CU_FUSE_MNT_VIEWDIR]
stop_copper_aurora.sh     [-d log_dir_base] [-v CU_FUSE_MNT_VIEWDIR]
launch_copper_frontier.sh [-d log_dir_base] [-v CU_FUSE_MNT_VIEWDIR]
stop_copper_frontier.sh   [-d log_dir_base] [-v CU_FUSE_MNT_VIEWDIR]

Aurora Build Notes

Aurora deployments typically use the site copper module for runtime use. For source builds, activate the appropriate Mochi dependency environment, update scripts/env.sh for the Aurora toolchain and paths, and run the build helper.

module load cmake
module load gcc
source /path/to/spack/share/spack/setup-env.sh
spack env activate spack-copper-mod-env

cd /path/to/copper/scripts
cp default_env.sh env.sh
sh build_helper/build.sh

Aurora Usage Example

module load copper
APP_BASE=/lus/flare/projects/datascience/${USER}/exp1
MY_COPPER_MOUNT=/tmp/${USER}/copper_mount

./build/launch_copper_aurora.sh -d ${APP_BASE}/copper-logs-dir -v ${MY_COPPER_MOUNT}

time mpirun --np ${NRANKS} --ppn ${RANKS_PER_NODE} \
  --cpu-bind=list:4:56:9:61:14:66:19:71:20:74:25:79 --genvall \
  --genv=PYTHONPATH=${MY_COPPER_MOUNT}${APP_BASE}/lus_custom_pip_env:$PYTHONPATH \
  python3 -c "import torch; print(torch.__file__)"

./build/stop_copper_aurora.sh -d ${APP_BASE}/copper-logs-dir -v ${MY_COPPER_MOUNT}

Aurora Example Files

The Aurora example scripts are available in:

  • examples/aurora_examples/launch_copper_aurora.sh

  • examples/aurora_examples/stop_copper_aurora.sh

  • examples/aurora_examples/simple_with_copper.sh

  • examples/aurora_examples/simple_without_copper.sh

These Aurora example wrappers are standalone and use PBS-oriented launch logic. They are intended to be readable and adaptable without depending on the generic wrapper script.

After build, the default Aurora facility address-book path used by the wrappers is build/alcf_aurora_copper_addressbook.txt.

Frontier Build Notes

Frontier deployments commonly use the UMS-managed Copper environment. For source builds, activate the Frontier Spack environment, review scripts/env.sh, and run the build helper.

module load gcc-native/14.2
module load cmake
source /sw/frontier/ums/ums046/spack/share/spack/setup-env.sh
spack env activate spack-copper-mod-env

cd /path/to/copper/scripts
cp default_env.sh env.sh
sh build_helper/build.sh

Frontier Usage Example

module load ums ums046 copper
APP_BASE=/lustre/orion/proj-shared/ums046/${USER}/exp1
MY_COPPER_MOUNT=/mnt/bb/$USER/copper_mount

./build/launch_copper_frontier.sh -d ${APP_BASE}/copper-logs-dir -v ${MY_COPPER_MOUNT}
conda activate ${MY_COPPER_MOUNT}${APP_BASE}/conda_env
CPU_BINDING_MAP=verbose,map_cpu:9,17,25,33,41,49,57,73

/usr/bin/time srun --overlap -N ${SLURM_NNODES} -n $((SLURM_NNODES * 8)) \
  --ntasks-per-node=8 --cpu-bind=${CPU_BINDING_MAP} \
  python3 -c "import torch; print('torch imported from:', torch.__file__)"

./build/stop_copper_frontier.sh -d ${APP_BASE}/copper-logs-dir -v ${MY_COPPER_MOUNT}

Frontier Example Files

The Frontier example scripts are available in:

  • examples/frontier_examples/launch_copper_frontier.sh

  • examples/frontier_examples/stop_copper_frontier.sh

  • examples/frontier_examples/simple_with_copper.sh

  • examples/frontier_examples/simple_without_copper.sh

These Frontier example wrappers are standalone and use Slurm-oriented launch logic. They are intended to be readable and adaptable without depending on the generic wrapper script.

After build, the default Frontier facility address-book path used by the wrappers is build/olcf_frontier_copper_addressbook.txt.