diff --git a/components/eamxx/cmake/machine-files/ghci-snl-openmp.cmake b/components/eamxx/cmake/machine-files/ghci-snl-openmp.cmake new file mode 100644 index 00000000000..0d604cbb3b2 --- /dev/null +++ b/components/eamxx/cmake/machine-files/ghci-snl-openmp.cmake @@ -0,0 +1,9 @@ +# Common settings for our ghci images +include(${CMAKE_CURRENT_LIST_DIR}/ghci.cmake) + +# Set SCREAM_MACHINE +set(SCREAM_MACHINE ghci-openmp CACHE STRING "") + +# Set OpenMP backend +set(EKAT_MACH_FILES_PATH ${CMAKE_CURRENT_LIST_DIR}/../../../../externals/ekat/cmake/machine-files) +include (${EKAT_MACH_FILES_PATH}/kokkos/openmp.cmake) diff --git a/components/eamxx/cmake/machine-files/ghci-snl.cmake b/components/eamxx/cmake/machine-files/ghci-snl.cmake new file mode 100644 index 00000000000..f8115aec966 --- /dev/null +++ b/components/eamxx/cmake/machine-files/ghci-snl.cmake @@ -0,0 +1,15 @@ +# Set Fortran flags +set(CMAKE_Fortran_FLAGS "-fallow-argument-mismatch" CACHE STRING "Fortran compiler flags" FORCE) + +# Set the path to SCREAM input data +set(SCREAM_INPUT_ROOT /projects/e3sm/inputdata CACHE PATH "Path to SCREAM input data" FORCE) + +# Set the path to BLAS/LAPACK libraries +set(BLAS_LIBRARIES "/spack-installs/netlib-lapack/3.11.0/gcc/12.3.0/base/65x6uge/lib64/libblas.so" CACHE STRING "Path to BLAS library" FORCE) +set(LAPACK_LIBRARIES "/spack-installs/netlib-lapack/3.11.0/gcc/12.3.0/base/65x6uge/lib64/liblapack.so" CACHE STRING "Path to LAPACK library" FORCE) + +# Let's catch usage of code deprecated in Kokkos 4 +option (Kokkos_ENABLE_DEPRECATED_CODE_4 "" OFF) + +# We need to manage resources to spread across available cores/gpus +option (EKAT_TEST_LAUNCHER_MANAGE_RESOURCES "" ON) diff --git a/components/eamxx/scripts/machines_specs.py b/components/eamxx/scripts/machines_specs.py index 337f8b66d22..713f49200fb 100644 --- a/components/eamxx/scripts/machines_specs.py +++ b/components/eamxx/scripts/machines_specs.py @@ -93,6 +93,11 @@ "linux-generic" : ([],["mpicxx","mpifort","mpicc"],"", ""), "linux-generic-debug" : ([],["mpicxx","mpifort","mpicc"],"", ""), "linux-generic-serial" : ([],["mpicxx","mpifort","mpicc"],"", ""), + "ghci-snl-openmp" : ([], + ["mpicxx","mpifort","mpicc"], + "", + "/projects/e3sm/baselines/scream/master-baselines" + ), } if pathlib.Path("~/.cime/scream_mach_specs.py").expanduser().is_file(): # pylint: disable=no-member