blob: 810005bafb7c864a120b0f7cf86bcf2bf24b5603 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# please set your project account
#export proj="<yourProjectNameHere>" # edit this and comment in
# required dependencies
module load cmake/3.23.1
module load clang/14.0.6-magic
module load mvapich2/2.3.7
# optional: for PSATD support
module load fftw/3.3.10
# optional: for QED lookup table generation support
module load boost/1.80.0
# optional: for openPMD support
module load hdf5-parallel/1.14.0
SW_DIR="/usr/workspace/${USER}/quartz"
export CMAKE_PREFIX_PATH=${SW_DIR}/c-blosc-1.21.1:$CMAKE_PREFIX_PATH
export CMAKE_PREFIX_PATH=${SW_DIR}/adios2-2.8.3:$CMAKE_PREFIX_PATH
# optional: for PSATD in RZ geometry support
export CMAKE_PREFIX_PATH=${SW_DIR}/blaspp-master:$CMAKE_PREFIX_PATH
export CMAKE_PREFIX_PATH=${SW_DIR}/lapackpp-master:$CMAKE_PREFIX_PATH
export LD_LIBRARY_PATH=${SW_DIR}/blaspp-master/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=${SW_DIR}/lapackpp-master/lib64:$LD_LIBRARY_PATH
# optional: for Python bindings
module load python/3.9.12
if [ -d "${SW_DIR}/venvs/warpx-quartz" ]
then
source ${SW_DIR}/venvs/warpx-quartz/bin/activate
fi
# optional: an alias to request an interactive node for two hours
alias getNode="srun --time=0:30:00 --nodes=1 --ntasks-per-node=2 --cpus-per-task=18 -p pdebug --pty bash"
# an alias to run a command on a batch node for up to 30min
# usage: runNode <command>
alias runNode="srun --time=0:30:00 --nodes=1 --ntasks-per-node=2 --cpus-per-task=18 -p pdebug"
# fix system defaults: do not escape $ with a \ on tab completion
shopt -s direxpand
# optimize CPU microarchitecture for Intel Xeon E5-2695 v4
# note: the cc/CC/ftn wrappers below add those
export CXXFLAGS="-march=broadwell"
export CFLAGS="-march=broadwell"
# compiler environment hints
export CC=$(which clang)
export CXX=$(which clang++)
export FC=$(which gfortran)
|