Skip to content

Commit 85326ae

Browse files
Update Polaris install instructions (#4664)
1 parent 6e87dd5 commit 85326ae

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

Tools/machines/polaris-alcf/install_gpu_dependencies.sh

+5-5
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#
55
# This file is part of WarpX.
66
#
7-
# Author: Axel Huebl (edited by Roelof Groenewald for Polaris)
7+
# Authors: Axel Huebl, Roelof Groenewald
88
# License: BSD-3-Clause-LBNL
99

1010
# Exit on first error encountered #############################################
@@ -98,7 +98,7 @@ python3 -m pip install --upgrade pip
9898
python3 -m pip install --upgrade virtualenv
9999
python3 -m pip cache purge
100100
rm -rf ${SW_DIR}/venvs/warpx
101-
python3 -m venv --system-site-packages ${SW_DIR}/venvs/warpx
101+
python3 -m venv ${SW_DIR}/venvs/warpx
102102
source ${SW_DIR}/venvs/warpx/bin/activate
103103
python3 -m pip install --upgrade pip
104104
python3 -m pip install --upgrade build
@@ -109,15 +109,15 @@ python3 -m pip install --upgrade cython
109109
python3 -m pip install --upgrade numpy
110110
python3 -m pip install --upgrade pandas
111111
python3 -m pip install --upgrade scipy
112-
# MPICC="cc -target-accel=nvidia80 -shared" python3 -m pip install --upgrade mpi4py --no-cache-dir --no-build-isolation --no-binary mpi4py
112+
MPICC="CC -target-accel=nvidia80 -shared" python3 -m pip install --upgrade mpi4py --no-cache-dir --no-build-isolation --no-binary mpi4py
113113
python3 -m pip install --upgrade openpmd-api
114114
python3 -m pip install --upgrade matplotlib
115115
python3 -m pip install --upgrade yt
116116
# install or update WarpX dependencies such as picmistandard
117117
python3 -m pip install --upgrade -r $HOME/src/warpx/requirements.txt
118-
python3 -m pip install cupy-cuda11x # CUDA 11.7 compatible wheel
118+
python3 -m pip install cupy-cuda11x # CUDA 11.8 compatible wheel
119119
# optional: for libEnsemble
120120
python3 -m pip install -r $HOME/src/warpx/Tools/LibEnsemble/requirements.txt
121121
# optional: for optimas (based on libEnsemble & ax->botorch->gpytorch->pytorch)
122-
python3 -m pip install --upgrade torch # CUDA 11.7 compatible wheel
122+
python3 -m pip install --upgrade torch # CUDA 11.8 compatible wheel
123123
python3 -m pip install -r $HOME/src/warpx/Tools/optimas/requirements.txt

Tools/machines/polaris-alcf/polaris_gpu_warpx.profile.example

+12-8
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
# Set the project name
22
export proj="" # change me!
33

4+
# swap to GNU programming environment (with gcc 11.2)
5+
module swap PrgEnv-nvhpc PrgEnv-gnu
6+
module swap gcc/12.2.0 gcc/11.2.0
7+
module load nvhpc-mixed/22.11
8+
49
# swap to the Milan cray package
5-
# module swap craype-x86-rome craype-x86-milan
10+
module swap craype-x86-rome craype-x86-milan
611

712
# required dependencies
813
module load cmake/3.23.2
9-
module load cudatoolkit-standalone
1014

1115
# optional: for QED support with detailed tables
1216
# module load boost/1.81.0
@@ -41,11 +45,11 @@ export AMREX_CUDA_ARCH=8.0
4145

4246
# optimize CPU microarchitecture for AMD EPYC 3rd Gen (Milan/Zen3)
4347
# note: the cc/CC/ftn wrappers below add those
44-
# export CXXFLAGS="-march=znver3"
45-
# export CFLAGS="-march=znver3"
48+
export CXXFLAGS="-march=znver3"
49+
export CFLAGS="-march=znver3"
4650

4751
# compiler environment hints
48-
export CC=nvc
49-
export CXX=nvc++
50-
export CUDACXX=nvcc
51-
export CUDAHOSTCXX=nvc++
52+
export CC=$(which gcc)
53+
export CXX=$(which g++)
54+
export CUDACXX=$(which nvcc)
55+
export CUDAHOSTCXX=${CXX}

0 commit comments

Comments
 (0)