diff --git a/config.yaml b/config.yaml index 45ccf2d3..a1627dfd 100644 --- a/config.yaml +++ b/config.yaml @@ -39,6 +39,11 @@ uenvs: zen3: '5.18' a100: '5.18' icon: + "26.2": + recipes: + gh200: '26.2/gh200' + deploy: + santis: [gh200] "25.2": recipes: gh200: '25.2/gh200' diff --git a/recipes/icon/26.2/gh200/compilers.yaml b/recipes/icon/26.2/gh200/compilers.yaml new file mode 100644 index 00000000..9573155d --- /dev/null +++ b/recipes/icon/26.2/gh200/compilers.yaml @@ -0,0 +1,6 @@ +gcc: + version: "14" +nvhpc: + # version: "26.3" + # - ML - downgrade try + version: "26.1" diff --git a/recipes/icon/26.2/gh200/config.yaml b/recipes/icon/26.2/gh200/config.yaml new file mode 100644 index 00000000..3b96c464 --- /dev/null +++ b/recipes/icon/26.2/gh200/config.yaml @@ -0,0 +1,15 @@ +name: icon +store: /user-environment +spack: + repo: https://github.com/spack/spack.git + commit: releases/v1.1 + packages: + c2sm: + repo: https://github.com/C2SM/spack-c2sm.git + commit: v1.1_dev # TODO: pin this to a tag + builtin: + repo: https://github.com/spack/spack-packages.git + commit: 22599d09b1672ee066e6b4336956ea83e1d9e6f0 # develop on 15.06.2026 +modules: true +description: "Compilers and libraries required to build ICON" +version: 2 diff --git a/recipes/icon/26.2/gh200/environments.yaml b/recipes/icon/26.2/gh200/environments.yaml new file mode 100644 index 00000000..daa457a0 --- /dev/null +++ b/recipes/icon/26.2/gh200/environments.yaml @@ -0,0 +1,41 @@ +icon: + compiler: [gcc, nvhpc] + network: + mpi: cray-mpich@9.1.0 +cuda %c,cxx,fortran=nvhpc ^libfabric@2 +gdrcopy %c=nvhpc + specs: [ xpmem ] + unify: when_possible + specs: + - python@3.13 %c,cxx=gcc ^libffi %c,cxx=gcc ^expat %c=gcc ^libmd %c=gcc ^gettext %c,cxx=gcc + - python-venv + - cuda@13.1 + - eccodes@2.36.4 +fortran jp2k=jasper %c,cxx,fortran=nvhpc + - eccodes-cosmo-resources@2.36.0.3 ^eccodes %c,cxx,fortran=nvhpc + - hdf5@1.14.6 +fortran+hl+szip+threadsafe %c,fortran=nvhpc + - netcdf-c@4.9.3 %c,cxx=nvhpc + - netcdf-fortran@4.6.2 %c,fortran=nvhpc + - boost + - openblas %c,cxx,fortran=nvhpc + - serialbox +fortran +netcdf %c,cxx,fortran=nvhpc + # for validation + - cdo + # everything needed for nccl on SS11 + - nccl@2.29.2 + - nccl-tests + - aws-ofi-nccl@1.17.2 + # extras + - libfyaml + - zlib-ng + - cmake + - findutils + variants: + - +mpi + - +cuda + - cuda_arch=90 + views: + default: + link: roots + uenv: + prefix_paths: + LD_LIBRARY_PATH: [lib, lib64] + exclude: + - python-venv diff --git a/recipes/icon/26.2/gh200/extra/reframe.yaml b/recipes/icon/26.2/gh200/extra/reframe.yaml new file mode 100644 index 00000000..89ed23f7 --- /dev/null +++ b/recipes/icon/26.2/gh200/extra/reframe.yaml @@ -0,0 +1,15 @@ +default: + features: + - cuda + - mpi + - cray-mpich + - nccl + - nccl-tests + - openmp + - osu-micro-benchmarks + - serial + cc: mpicc + cxx: mpic++ + ftn: mpifort + views: + - default diff --git a/recipes/icon/26.2/gh200/modules.yaml b/recipes/icon/26.2/gh200/modules.yaml new file mode 100644 index 00000000..a4010ae2 --- /dev/null +++ b/recipes/icon/26.2/gh200/modules.yaml @@ -0,0 +1,26 @@ +modules: + # Paths to check when creating modules for all module sets + prefix_inspections: + bin: + - PATH + lib: + - LD_LIBRARY_PATH + lib64: + - LD_LIBRARY_PATH + + default: + arch_folder: false + # Where to install modules + roots: + tcl: /snap/modules + tcl: + all: + autoload: run + hash_length: 0 + hide_implicits: true + exclude: + - '%gcc@7.5.0' + - '%gcc@12' + - 'gcc %gcc@7.5.0' + projections: + all: '{name}/{version}'