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 |
|
|
|
Frontier |
Slurm |
|
|
|
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.shexamples/aurora_examples/stop_copper_aurora.shexamples/aurora_examples/simple_with_copper.shexamples/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.shexamples/frontier_examples/stop_copper_frontier.shexamples/frontier_examples/simple_with_copper.shexamples/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.