Skip to content

Commit 41ff2e3

Browse files
authored
Merge pull request #220 from sjsprecious/update_casper_config
Update machine configuration for Casper
2 parents 060abc0 + 39df988 commit 41ff2e3

File tree

4 files changed

+43
-90
lines changed

4 files changed

+43
-90
lines changed

machines/casper/casper.cmake

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
if (COMP_NAME STREQUAL gptl)
2+
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_VPRINTF -DHAVE_BACKTRACE -DHAVE_SLASHPROC -DHAVE_COMM_F2C -DHAVE_TIMES -DHAVE_GETTIMEOFDAY")
3+
endif()
4+
set(MPI_SERIAL_PATH "$ENV{NCAR_ROOT_MPI_SERIAL}")
5+
set(NETCDF_PATH "$ENV{NETCDF}")
6+
set(PIO_FILESYSTEM_HINTS "lustre")
7+
set(PNETCDF_PATH "$ENV{PNETCDF}")
8+
if(DEFINED ENV{PIO})
9+
set(PIO_LIBDIR "$ENV{PIO}/lib")
10+
set(PIO_INCDIR "$ENV{PIO}/include")
11+
endif()
12+
# If we want to use cray-libsci instead of mkl uncomment this line as well as the module in config_machines.xml
13+
string(REPLACE "-mkl=cluster" "" SLIBS "${SLIBS}")
14+
string(APPEND CPPDEFS " -DHAVE_GETTID")

machines/casper/config_machines.xml

Lines changed: 21 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -16,108 +16,58 @@
1616
<MAX_GPUS_PER_NODE compiler="nvhpc">8</MAX_GPUS_PER_NODE>
1717
<MAX_MPITASKS_PER_NODE>36</MAX_MPITASKS_PER_NODE>
1818
<MAX_CPUTASKS_PER_GPU_NODE>36</MAX_CPUTASKS_PER_GPU_NODE>
19-
<GPU_TYPE>none,v100</GPU_TYPE>
20-
<GPU_OFFLOAD>none,openacc,openmp,combined</GPU_OFFLOAD>
2119
<PROJECT_REQUIRED>TRUE</PROJECT_REQUIRED>
22-
<mpirun mpilib="default">
23-
<executable>mpirun</executable>
24-
<arguments>
25-
<arg name="anum_tasks"> -np {{ total_tasks }}</arg>
26-
</arguments>
27-
</mpirun>
2820
<mpirun mpilib="openmpi">
2921
<executable>mpirun</executable>
3022
<arguments>
3123
<arg name="anum_tasks"> -np {{ total_tasks }}</arg>
3224
</arguments>
3325
</mpirun>
34-
<module_system type="module" allow_error="true">
35-
<init_path lang="perl">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/init/perl</init_path>
36-
<init_path lang="python">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/init/env_modules_python.py</init_path>
37-
<init_path lang="sh">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/init/sh</init_path>
38-
<init_path lang="csh">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/init/csh</init_path>
39-
<cmd_path lang="perl">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/libexec/lmod perl</cmd_path>
40-
<cmd_path lang="python">/glade/u/apps/casper/23.10/spack/opt/spack/lmod/8.7.24/gcc/7.5.0/m4jx/lmod/lmod/libexec/lmod python</cmd_path>
26+
<module_system type="module" allow_error="true">
27+
<init_path lang="perl">$ENV{LMOD_ROOT}/lmod/init/perl</init_path>
28+
<init_path lang="python">$ENV{LMOD_ROOT}/lmod/init/env_modules_python.py</init_path>
29+
<init_path lang="sh">$ENV{LMOD_ROOT}/lmod/init/sh</init_path>
30+
<init_path lang="csh">$ENV{LMOD_ROOT}/lmod/init/csh</init_path>
31+
<cmd_path lang="perl">$ENV{LMOD_ROOT}/lmod/libexec/lmod perl</cmd_path>
32+
<cmd_path lang="python">$ENV{LMOD_ROOT}/lmod/libexec/lmod python</cmd_path>
4133
<cmd_path lang="sh">module</cmd_path>
4234
<cmd_path lang="csh">module</cmd_path>
4335
<modules>
36+
<command name="load">ncarenv/24.12</command>
4437
<command name="purge"/>
45-
<command name="load">ncarenv/23.10</command>
46-
<command name="load">cmake/3.26.3</command>
47-
</modules>
48-
<modules compiler="nvhpc">
49-
<command name="load">nvhpc/23.7</command>
38+
<command name="load">cmake/3.31.0</command>
5039
</modules>
5140
<modules compiler="intel">
52-
<command name="load">intel/2023.2.1</command>
53-
<command name="load">mkl/2023.2.0</command>
54-
</modules>
55-
<modules mpilib="openmpi" compiler="nvhpc" gpu_offload="!none">
56-
<command name="load">cuda/12.2.1</command>
41+
<command name="load">intel/2024.2.1</command>
42+
<command name="load">mkl</command>
5743
</modules>
58-
<modules mpilib="openmpi" compiler="nvhpc">
59-
<command name="load">openmpi/4.1.6</command>
60-
<command name="load">netcdf-mpi/4.9.2</command>
61-
<command name="load">parallel-netcdf/1.12.3</command>
44+
<modules compiler="nvhpc">
45+
<command name="load">nvhpc/24.11</command>
6246
</modules>
63-
<modules mpilib="mpi-serial" compiler="nvhpc">
64-
<command name="load">netcdf/4.9.2</command>
47+
<modules mpilib="openmpi" compiler="nvhpc" gpu_type="!none">
48+
<command name="load">cuda/12.3.2</command>
6549
</modules>
66-
<modules mpilib="openmpi" compiler="intel">
67-
<command name="load">openmpi/4.1.6</command>
50+
<modules mpilib="openmpi">
51+
<command name="load">openmpi/5.0.6</command>
6852
<command name="load">netcdf-mpi/4.9.2</command>
69-
<command name="load">parallel-netcdf/1.12.3</command>
70-
</modules>
71-
<modules mpilib="mpi-serial" compiler="intel">
72-
<command name="load">netcdf/4.9.2</command>
73-
</modules>
74-
<!-- prebuild ESMF lib for NUOPC driver -->
75-
<modules compiler="intel" mpilib="openmpi" DEBUG="TRUE">
76-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
77-
<command name="load">esmf-8.4.0b08_casper-ncdfio-openmpi-g</command>
78-
</modules>
79-
<modules compiler="intel" mpilib="openmpi" DEBUG="FALSE">
80-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
81-
<command name="load">esmf-8.4.0b08_casper-ncdfio-openmpi-O</command>
82-
</modules>
83-
<modules compiler="nvhpc" mpilib="openmpi" DEBUG="TRUE">
84-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/nvhpc/22.2/</command>
85-
<command name="load">esmf-8.4.1b01-ncdfio-openmpi-g</command>
86-
</modules>
87-
<modules compiler="nvhpc" mpilib="openmpi" DEBUG="FALSE">
88-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/nvhpc/22.2/</command>
89-
<command name="load">esmf-8.4.1b01-ncdfio-openmpi-O</command>
90-
</modules>
91-
<modules compiler="pgi" mpilib="openmpi" DEBUG="TRUE">
92-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
93-
<command name="load">esmf-8.4.0b08_casper-ncdfio-openmpi-g</command>
94-
</modules>
95-
<modules compiler="pgi" mpilib="openmpi" DEBUG="FALSE">
96-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
97-
<command name="load">esmf-8.2.0b11_casper-ncdfio-openmpi-O</command>
98-
</modules>
99-
<modules>
100-
<command name="load">ncarcompilers/0.5.0</command>
53+
<command name="load">parallel-netcdf/1.14.0</command>
10154
</modules>
10255
<modules>
103-
<command name="load">parallelio/2.6.2</command>
104-
<command name="load">esmf/8.5.0</command>
56+
<command name="load">parallelio/2.6.4</command>
57+
<command name="load">esmf/8.8.0</command>
10558
<command name="load">ncarcompilers/1.0.0</command>
10659
</modules>
10760
</module_system>
10861
<environment_variables>
109-
<env name="MODULEPATH">/glade/u/apps/dav/modulefiles/default/compilers:/glade/u/apps/dav/modulefiles/default/idep</env>
11062
<env name="OMP_STACKSIZE">256M</env>
11163
<env name="TMPDIR">/glade/derecho/scratch/$USER</env>
112-
<env name="CESMDATAROOT">/glade/p/cesmdata/cseg</env>
113-
<env name="NETCDF_PATH">$ENV{NETCDF}</env>
11464
</environment_variables>
11565
<environment_variables comp_interface="nuopc">
11666
<env name="ESMF_RUNTIME_PROFILE">ON</env>
11767
<env name="ESMF_RUNTIME_PROFILE_OUTPUT">SUMMARY</env>
11868
</environment_variables>
11969
<environment_variables compiler="nvhpc" gpu_offload="!none">
120-
<env name="RTE_KERNELS">openacc</env>
70+
<env name="NCAR_LIBS_CUDA">-lcuda -lcudart</env>
12171
</environment_variables>
12272
<resource_limits>
12373
<resource name="RLIMIT_STACK">-1</resource>

machines/casper/intel_casper.cmake

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
string(APPEND CFLAGS " -qopt-report -xCORE_AVX2")
22
string(APPEND FFLAGS " -qopt-report -xCORE_AVX2")
3-
if (DEBUG)
4-
string(APPEND CMAKE_OPTS " -DPIO_ENABLE_LOGGING=ON")
3+
if (COMP_NAME STREQUAL gptl)
4+
string(APPEND CPPDEFS " -DHAVE_SLASHPROC")
55
endif()
6+
if (COMP_NAME STREQUAL mpi-serial)
7+
string(APPEND CFLAGS " -std=c89 ")
8+
endif()
69
if (MPILIB STREQUAL mpi-serial AND NOT compile_threaded)
7-
set(PFUNIT_PATH "$ENV{CESMDATAROOT}/tools/pFUnit/pFUnit4.7.0_cheyenne_Intel19.1.1_noMPI_noOpenMP")
10+
set(PFUNIT_PATH "$ENV{CESMDATAROOT}/tools/pFUnit/pFUnit4.8.0_derecho_Intel2023.2.1_noMPI_noOpenMP")
811
endif()
9-
set(HAS_F2008_CONTIGUOUS "TRUE")
12+
set(SCC icx)
13+
set(SFC ifx)

machines/casper/pgi_casper.cmake

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)