Skip to content

Commit 8e0cb59

Browse files
authored
Merge pull request #139 from xylar/add-pm-gpu
Many updates to supported Perlmutter compilers
2 parents 94f695e + 4a07559 commit 8e0cb59

23 files changed

+1536
-407
lines changed

mache/cime_machine_config/config_machines.xml

Lines changed: 521 additions & 321 deletions
Large diffs are not rendered by default.

mache/machines/pm-gpu.cfg

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Options related to deploying an e3sm-unified conda environment on supported
2+
# machines
3+
[e3sm_unified]
4+
5+
# the unix group for permissions for the e3sm-unified conda environment
6+
group = e3sm
7+
8+
# the compiler set to use for system libraries and MPAS builds
9+
compiler = nvidiagpu
10+
11+
# the system MPI library to use for intel18 compiler
12+
mpi = mpich
13+
14+
# the path to the directory where activation scripts, the base environment, and
15+
# system libraries will be deployed
16+
base_path = /global/common/software/e3sm/anaconda_envs
17+
18+
# whether to use system modules for hdf5, netcdf-c, netcdf-fortran and pnetcdf
19+
# (spack modules are used otherwise)
20+
use_system_hdf5_netcdf = True
21+
22+
23+
# config options related to data needed by diagnostics software such as
24+
# e3sm_diags and MPAS-Analysis
25+
[diagnostics]
26+
27+
# The base path to the diagnostics directory
28+
base_path = /global/cfs/cdirs/e3sm/diagnostics
29+
30+
# the unix group for permissions for diagnostics
31+
group = e3sm
32+
33+
34+
# config options associated with web portals
35+
[web_portal]
36+
37+
# The path to the base of the web portals
38+
base_path = /global/cfs/cdirs/e3sm/www
39+
40+
# The base URL that corresponds to the base path
41+
base_url = https://portal.nersc.gov/cfs/e3sm
42+
43+
44+
# The parallel section describes options related to running jobs in parallel
45+
[parallel]
46+
47+
# parallel system of execution: slurm, cobalt or single_node
48+
system = slurm
49+
50+
# whether to use mpirun or srun to run a task
51+
parallel_executable = srun
52+
53+
# cores per node on the machine
54+
cores_per_node = 256
55+
56+
# account for running diagnostics jobs
57+
account = e3sm
58+
59+
# available constraint(s) (default is the first)
60+
constraints = gpu
61+
62+
# quality of service (default is the first)
63+
qos = regular, debug, premium
64+
65+
# Config options related to spack environments
66+
[spack]
67+
68+
# whether to load modules from the spack yaml file before loading the spack
69+
# environment
70+
modules_before = False
71+
72+
# whether to load modules from the spack yaml file after loading the spack
73+
# environment
74+
modules_after = False
75+
76+
# whether the machine uses cray compilers
77+
cray_compilers = True
78+
79+
80+
# config options related to synchronizing files
81+
[sync]
82+
83+
# the full hostname of the machine
84+
hostname = perlmutter-p1.nersc.gov

mache/spack/pm-cpu_gnu_mpich.csh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ module load craype-accel-host
2121
{% if e3sm_lapack %}
2222
module load cray-libsci/23.02.1.1
2323
{% endif %}
24-
module load craype/2.7.19
24+
module load craype/2.7.20
2525
module rm cray-mpich &> /dev/null
2626
module load libfabric/1.15.2.0
27-
module load cray-mpich/8.1.24
27+
module load cray-mpich/8.1.25
2828
{% if e3sm_hdf5_netcdf %}
2929
module rm cray-hdf5-parallel &> /dev/null
3030
module rm cray-netcdf-hdf5parallel &> /dev/null

mache/spack/pm-cpu_gnu_mpich.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ module load craype-accel-host
2121
{% if e3sm_lapack %}
2222
module load cray-libsci/23.02.1.1
2323
{% endif %}
24-
module load craype/2.7.19
24+
module load craype/2.7.20
2525
module rm cray-mpich &> /dev/null
2626
module load libfabric/1.15.2.0
27-
module load cray-mpich/8.1.24
27+
module load cray-mpich/8.1.25
2828
{% if e3sm_hdf5_netcdf %}
2929
module rm cray-hdf5-parallel &> /dev/null
3030
module rm cray-netcdf-hdf5parallel &> /dev/null

mache/spack/pm-cpu_gnu_mpich.yaml

Lines changed: 34 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ spack:
1818
all:
1919
compiler: [[email protected]]
2020
providers:
21-
21+
2222
{% if e3sm_lapack %}
2323
2424
{% endif %}
@@ -32,21 +32,46 @@ spack:
3232
3333
prefix: /usr
3434
buildable: false
35+
cmake:
36+
externals:
37+
38+
prefix: /global/common/software/nersc/pm-2022q4/spack/linux-sles15-zen/cmake-3.24.3-k5msymx/
39+
buildable: false
3540
gettext:
3641
externals:
3742
3843
prefix: /usr
3944
buildable: false
45+
gmake:
46+
externals:
47+
48+
prefix: /usr
49+
buildable: false
50+
libuv:
51+
externals:
52+
53+
prefix: /usr
54+
buildable: false
4055
libxml2:
4156
externals:
4257
4358
prefix: /usr
4459
buildable: false
60+
m4:
61+
externals:
62+
63+
prefix: /usr
64+
buildable: false
4565
ncurses:
4666
externals:
4767
4868
prefix: /usr
4969
buildable: false
70+
ninja:
71+
externals:
72+
73+
prefix: /usr
74+
buildable: false
5075
openssl:
5176
externals:
5277
@@ -81,16 +106,16 @@ spack:
81106
- PrgEnv-gnu/8.3.3
82107
- gcc/11.2.0
83108
- craype-accel-host
84-
- craype/2.7.19
109+
- craype/2.7.20
85110
- libfabric/1.15.2.0
86111
buildable: false
87112
cray-mpich:
88113
externals:
89-
- spec: [email protected].24
90-
prefix: /opt/cray/pe/mpich/8.1.24/ofi/gnu/9.1
114+
- spec: [email protected].25
115+
prefix: /opt/cray/pe/mpich/8.1.25/ofi/gnu/9.1
91116
modules:
92117
- libfabric/1.15.2.0
93-
- cray-mpich/8.1.24
118+
- cray-mpich/8.1.25
94119
buildable: false
95120
libfabric:
96121
externals:
@@ -108,35 +133,11 @@ spack:
108133
- cray-libsci/23.02.1.1
109134
buildable: false
110135
{% endif %}
111-
{% if e3sm_hdf5_netcdf %}
112-
hdf5:
113-
externals:
114-
- spec: [email protected]~cxx+fortran+hl~java+mpi+shared
115-
prefix: /opt/cray/pe/hdf5-parallel/1.12.2.3/GNU/9.1
116-
buildable: false
117-
parallel-netcdf:
118-
externals:
119-
- spec: [email protected]+cxx+fortran+pic+shared
120-
prefix: /opt/cray/pe/parallel-netcdf/1.12.3.3/GNU/9.1/
121-
buildable: false
122-
netcdf-c:
123-
externals:
124-
- spec: [email protected]+mpi~parallel-netcdf
125-
prefix: /opt/cray/pe/netcdf-hdf5parallel/4.9.0.3/GNU/9.1
126-
buildable: false
127-
netcdf-fortran:
128-
externals:
129-
- spec: [email protected] ^netcdf-c+mpi
130-
prefix: /opt/cray/pe/netcdf-hdf5parallel/4.9.0.3/GNU/9.1
131-
buildable: false
132-
{% endif %}
133-
{% if system_hdf5_netcdf %}
136+
{% if e3sm_hdf5_netcdf or system_hdf5_netcdf %}
134137
hdf5:
135138
externals:
136139
- spec: [email protected]~cxx+fortran+hl~java+mpi+shared
137140
prefix: /opt/cray/pe/hdf5-parallel/1.12.2.3/GNU/9.1
138-
- spec: [email protected]~cxx+fortran+hl~java~mpi+shared
139-
prefix: /opt/cray/pe/hdf5/1.12.2.3/GNU/9.1
140141
buildable: false
141142
parallel-netcdf:
142143
externals:
@@ -147,15 +148,11 @@ spack:
147148
externals:
148149
- spec: [email protected]+mpi~parallel-netcdf
149150
prefix: /opt/cray/pe/netcdf-hdf5parallel/4.9.0.3/GNU/9.1
150-
- spec: [email protected]~mpi~parallel-netcdf
151-
prefix: /opt/cray/pe/netcdf/4.9.0.3/GNU/9.1
152151
buildable: false
153152
netcdf-fortran:
154153
externals:
155-
- spec: [email protected] ^netcdf-c+mpi
154+
156155
prefix: /opt/cray/pe/netcdf-hdf5parallel/4.9.0.3/GNU/9.1
157-
- spec: [email protected] ^netcdf-c~mpi
158-
prefix: /opt/cray/pe/netcdf/4.9.0.3/GNU/9.1
159156
buildable: false
160157
{% endif %}
161158
config:
@@ -175,8 +172,8 @@ spack:
175172
- PrgEnv-gnu/8.3.3
176173
- gcc/11.2.0
177174
- craype-accel-host
178-
- craype/2.7.19
175+
- craype/2.7.20
179176
- libfabric/1.15.2.0
180177
environment:
181178
prepend_path:
182-
PKG_CONFIG_PATH: "/opt/cray/xpmem/2.5.2-2.4_3.30__gd0f7936.shasta/lib64/pkgconfig"
179+
PKG_CONFIG_PATH: "/opt/cray/xpmem/2.6.2-2.5_2.33__gd067c3f.shasta/lib64/pkgconfig"

mache/spack/pm-cpu_intel_mpich.csh

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ module rm darshan &> /dev/null
1818
module load PrgEnv-intel/8.3.3
1919
module load intel/2023.1.0
2020
module load craype-accel-host
21-
module load craype/2.7.19
21+
module load craype/2.7.20
2222
module rm cray-mpich &> /dev/null
23-
module load libfabric/1.15.2.0
24-
module load cray-mpich/8.1.24
23+
module load cray-mpich/8.1.25
2524
{% if e3sm_hdf5_netcdf %}
2625
module rm cray-hdf5-parallel &> /dev/null
2726
module rm cray-netcdf-hdf5parallel &> /dev/null

mache/spack/pm-cpu_intel_mpich.sh

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ module rm darshan &> /dev/null
1818
module load PrgEnv-intel/8.3.3
1919
module load intel/2023.1.0
2020
module load craype-accel-host
21-
module load craype/2.7.19
21+
module load craype/2.7.20
2222
module rm cray-mpich &> /dev/null
23-
module load libfabric/1.15.2.0
24-
module load cray-mpich/8.1.24
23+
module load cray-mpich/8.1.25
2524
{% if e3sm_hdf5_netcdf %}
2625
module rm cray-hdf5-parallel &> /dev/null
2726
module rm cray-netcdf-hdf5parallel &> /dev/null

0 commit comments

Comments
 (0)