File tree Expand file tree Collapse file tree 3 files changed +14
-18
lines changed
Tools/machines/perlmutter-nersc Expand file tree Collapse file tree 3 files changed +14
-18
lines changed Original file line number Diff line number Diff line change 33Perlmutter (NERSC)
44==================
55
6- .. warning ::
7-
8- Perlmutter is still in acceptance testing and environments change often.
9- Please reach visit this page often for updates and reach out to us if something needs an update.
10-
116The `Perlmutter cluster <https://docs.nersc.gov/systems/perlmutter/ >`_ is located at NERSC.
127
138
Original file line number Diff line number Diff line change 11#! /bin/bash -l
22
3- # Copyright 2021 Axel Huebl, Kevin Gott
3+ # Copyright 2021-2022 Axel Huebl, Kevin Gott
44#
55# This file is part of WarpX.
66#
1313# SBATCH -A <proj>
1414# SBATCH -q regular
1515# SBATCH -C gpu
16- # SBATCH -c 32
16+ # SBATCH --exclusive
1717# SBATCH --ntasks-per-gpu=1
1818# SBATCH --gpus-per-node=4
1919# SBATCH -o WarpX.o%j
2020# SBATCH -e WarpX.e%j
2121
2222# GPU-aware MPI
2323export MPICH_GPU_SUPPORT_ENABLED=1
24+ export MPICH_OFI_NIC_POLICY=GPU
2425
25- # expose one GPU per MPI rank
26- export CUDA_VISIBLE_DEVICES= $SLURM_LOCALID
26+ # threads for OpenMP and threaded compressors per MPI rank
27+ export SRUN_CPUS_PER_TASK=32
2728
2829EXE=./warpx
2930# EXE=../WarpX/build/bin/warpx.3d.MPI.CUDA.DP.OPMD.QED
3031# EXE=./main3d.gnu.TPROF.MPI.CUDA.ex
3132INPUTS=inputs_small
3233
33- srun ${EXE} ${INPUTS} \
34+ # CUDA visible devices are ordered inverse to local task IDs
35+ srun /bin/bash -l -c " \
36+ export CUDA_VISIBLE_DEVICES=$(( 3 - SLURM_LOCALID)) ;
37+ ${EXE} ${INPUTS} \
38+ amrex.the_arena_is_managed=0 \
39+ amrex.use_gpu_aware_mpi=1" \
3440 > output.txt
Original file line number Diff line number Diff line change 11# please set your project account
2- #export proj=<yourProject> # LBNL/AMP: m3906_g
2+ #export proj=" <yourProject>_g" # change me
33
44# required dependencies
55module load cmake/3.22.0
6- module load PrgEnv-gnu
7- module load cudatoolkit
8-
9- # optional: just an additional text editor
10- # module load nano # TODO: request from support
116
127# optional: for QED support with detailed tables
138module load boost/1.78.0-gnu
149
1510# optional: for openPMD and PSATD+RZ support
16- module load cray-hdf5-parallel/1.12.1.1
11+ module load cray-hdf5-parallel/1.12.1.5
1712export CMAKE_PREFIX_PATH=$HOME/sw/perlmutter/c-blosc-1.21.1:$CMAKE_PREFIX_PATH
1813export CMAKE_PREFIX_PATH=$HOME/sw/perlmutter/adios2-2.7.1:$CMAKE_PREFIX_PATH
1914export CMAKE_PREFIX_PATH=$HOME/sw/perlmutter/blaspp-master:$CMAKE_PREFIX_PATH
@@ -25,7 +20,7 @@ export LD_LIBRARY_PATH=$HOME/sw/perlmutter/blaspp-master/lib64:$LD_LIBRARY_PATH
2520export LD_LIBRARY_PATH=$HOME/sw/perlmutter/lapackpp-master/lib64:$LD_LIBRARY_PATH
2621
2722# optional: for Python bindings or libEnsemble
28- module load cray-python/3.9.7 .1
23+ module load cray-python/3.9.12 .1
2924
3025if [ -d "$HOME/sw/perlmutter/venvs/warpx" ]
3126then
You can’t perform that action at this time.
0 commit comments