From 808395d2db79a53fdfee80467a7bf1786f82c6dc Mon Sep 17 00:00:00 2001 From: Nicolas Richart <nicolas.richart@epfl.ch> Date: Fri, 2 Aug 2024 16:15:53 +0200 Subject: [PATCH] Adding a stack to test gcc13 --- stacks/pinot-noir-gcc13/concretizer.yaml | 12 + stacks/pinot-noir-gcc13/config.json | 133 +++++ stacks/pinot-noir-gcc13/config.yaml | 9 + stacks/pinot-noir-gcc13/definitions_cuda.yaml | 11 + .../pinot-noir-gcc13/definitions_empty.yaml | 1 + .../definitions_helvetios.yaml | 1 + stacks/pinot-noir-gcc13/definitions_izar.yaml | 1 + stacks/pinot-noir-gcc13/definitions_jed.yaml | 7 + .../definitions_kuma-h100.yaml | 1 + .../definitions_kuma-l40s.yaml | 1 + stacks/pinot-noir-gcc13/mirrors.yaml | 1 + stacks/pinot-noir-gcc13/modules.yaml | 125 +++++ stacks/pinot-noir-gcc13/modules_empty.yaml | 3 + .../pinot-noir-gcc13/modules_helvetios.yaml | 1 + stacks/pinot-noir-gcc13/modules_izar.yaml | 1 + stacks/pinot-noir-gcc13/modules_jed.yaml | 1 + .../pinot-noir-gcc13/modules_kuma-h100.yaml | 14 + .../pinot-noir-gcc13/modules_kuma-l40s.yaml | 14 + stacks/pinot-noir-gcc13/packages.yaml | 26 + .../pinot-noir-gcc13/packages_helvetios.yaml | 8 + stacks/pinot-noir-gcc13/packages_izar.yaml | 11 + stacks/pinot-noir-gcc13/packages_jed.yaml | 85 +++ .../pinot-noir-gcc13/packages_kuma-h100.yaml | 109 ++++ .../pinot-noir-gcc13/packages_kuma-l40s.yaml | 106 ++++ stacks/pinot-noir-gcc13/packages_stack.yaml | 372 +++++++++++++ stacks/pinot-noir-gcc13/spack.yaml | 501 ++++++++++++++++++ .../templates/modules/group_restricted.lua | 10 + 27 files changed, 1565 insertions(+) create mode 100644 stacks/pinot-noir-gcc13/concretizer.yaml create mode 100644 stacks/pinot-noir-gcc13/config.json create mode 100644 stacks/pinot-noir-gcc13/config.yaml create mode 100644 stacks/pinot-noir-gcc13/definitions_cuda.yaml create mode 100644 stacks/pinot-noir-gcc13/definitions_empty.yaml create mode 120000 stacks/pinot-noir-gcc13/definitions_helvetios.yaml create mode 120000 stacks/pinot-noir-gcc13/definitions_izar.yaml create mode 100644 stacks/pinot-noir-gcc13/definitions_jed.yaml create mode 120000 stacks/pinot-noir-gcc13/definitions_kuma-h100.yaml create mode 120000 stacks/pinot-noir-gcc13/definitions_kuma-l40s.yaml create mode 100644 stacks/pinot-noir-gcc13/mirrors.yaml create mode 100644 stacks/pinot-noir-gcc13/modules.yaml create mode 100644 stacks/pinot-noir-gcc13/modules_empty.yaml create mode 120000 stacks/pinot-noir-gcc13/modules_helvetios.yaml create mode 120000 stacks/pinot-noir-gcc13/modules_izar.yaml create mode 120000 stacks/pinot-noir-gcc13/modules_jed.yaml create mode 100644 stacks/pinot-noir-gcc13/modules_kuma-h100.yaml create mode 100644 stacks/pinot-noir-gcc13/modules_kuma-l40s.yaml create mode 100644 stacks/pinot-noir-gcc13/packages.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_helvetios.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_izar.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_jed.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_kuma-h100.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_kuma-l40s.yaml create mode 100644 stacks/pinot-noir-gcc13/packages_stack.yaml create mode 100644 stacks/pinot-noir-gcc13/spack.yaml create mode 100644 stacks/pinot-noir-gcc13/templates/modules/group_restricted.lua diff --git a/stacks/pinot-noir-gcc13/concretizer.yaml b/stacks/pinot-noir-gcc13/concretizer.yaml new file mode 100644 index 0000000..3ed6dcf --- /dev/null +++ b/stacks/pinot-noir-gcc13/concretizer.yaml @@ -0,0 +1,12 @@ +concretizer: + reuse: false + # roots: true + # include: + # - "%gcc@12.3.0" + # exclude: + # - 'python' + # from: + # - type: local + unify: false + duplicates: + strategy: minimal diff --git a/stacks/pinot-noir-gcc13/config.json b/stacks/pinot-noir-gcc13/config.json new file mode 100644 index 0000000..5a5c053 --- /dev/null +++ b/stacks/pinot-noir-gcc13/config.json @@ -0,0 +1,133 @@ +{ + "spack": { + "version": "releases/v0.22", + "repos": { + "scitas-externals": { + "url": "https://gitlab.epfl.ch/SCITAS/software-stack/spack-repo-externals.git", + "branch": "releases/2024.0.0" + }, + "scitas-packages": { + "url": "https://gitlab.epfl.ch/SCITAS/software-stack/scitas-spack-packages.git", + "branch": "releases/2024.0.0" + } + }, + "mirrors": { + "local": { + "url": "spack-mirror", + "type": "relative" + }, + "restricted": { + "url": "spack-mirror-restriced", + "type": "relative" + } + } + }, + "stack": { + "version": "v1", + "mount_point": "/ssoft/spack", + "system_arch": "target=x86_64_v3", + "system_compiler": { + "gcc@11": { + "compiler": "gcc", + "spec": "gcc@11.2.1", + "version": "11.2.1" + } + }, + "targets": { + "helvetios": "skylake_avx512", + "izar": "cascadelake", + "jed": "icelake", + "kuma-l40s": "zen4", + "kuma-h100": "zen4" + }, + "compilers": { + "oneapi": { + "compiler": "oneapi", + "spec": "intel-oneapi-compilers@2024.1.0 %gcc@11.2.1", + "version": "2024.1.0", + "constraint": "env['environment'] in ['jed', 'helvetios']" + }, + "gcc": { + "compiler": "gcc", + "spec": "gcc@13.2.0 %gcc@11.2.1", + "version": "13.2.0" + } + }, + "system_packages": [ + "autoconf", + "autoconf-archive", + "automake", + "autotools", + "berkley-db", + "bzip2", + "ca-certificates-mozilla", + "check", + "cmake", + "curl", + "diffutils", + "expat", + "findutils", + "flex", + "font-util", + "fontconfig", + "freetype", + "gawk", + "gdbm", + "gettext", + "git", + "gmake", + "gmp", + "gnuplot", + "gperf", + "hcoll", + "help2man", + "libaec", + "libedit", + "libevent", + "libffi", + "libfuse", + "libidn2", + "libpciaccess", + "libpng", + "libsigsegv", + "libssh2", + "libtiff", + "libtool", + "libunistring", + "libuuid", + "libx11", + "libxcrypt", + "libxct", + "libxft", + "libxml2", + "lz4", + "m4", + "macro-utils", + "mpc", + "mpfr", + "ncurses", + "openssl", + "pcre", + "pcre2", + "perl", + "pigz", + "pkgconf", + "pmix", + "rdma-core", + "readline", + "slurm", + "sqlite", + "tar", + "tcl", + "texinfo", + "tk", + "utf8proc", + "util-linux-uuid", + "xpmem", + "xxd-standalon", + "xz", + "zlib-ng", + "zstd" + ] + } +} diff --git a/stacks/pinot-noir-gcc13/config.yaml b/stacks/pinot-noir-gcc13/config.yaml new file mode 100644 index 0000000..bac71f0 --- /dev/null +++ b/stacks/pinot-noir-gcc13/config.yaml @@ -0,0 +1,9 @@ +config: +# ccache: true + install_missing_compilers: false + + install_tree: + padded_length: False + + build_stage: + - $tempdir/$user/spack-stage diff --git a/stacks/pinot-noir-gcc13/definitions_cuda.yaml b/stacks/pinot-noir-gcc13/definitions_cuda.yaml new file mode 100644 index 0000000..99f5093 --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_cuda.yaml @@ -0,0 +1,11 @@ +definitions: + - cuda_system_codes: [] + + - cuda_serial_codes: + - cuda + - cudnn + - nccl + + - cuda_mpi_codes: + - nvshmem + - nccl-tests diff --git a/stacks/pinot-noir-gcc13/definitions_empty.yaml b/stacks/pinot-noir-gcc13/definitions_empty.yaml new file mode 100644 index 0000000..ca4ba7f --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_empty.yaml @@ -0,0 +1 @@ +definitions: [] diff --git a/stacks/pinot-noir-gcc13/definitions_helvetios.yaml b/stacks/pinot-noir-gcc13/definitions_helvetios.yaml new file mode 120000 index 0000000..3552a78 --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_helvetios.yaml @@ -0,0 +1 @@ +definitions_empty.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/definitions_izar.yaml b/stacks/pinot-noir-gcc13/definitions_izar.yaml new file mode 120000 index 0000000..2c65e6a --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_izar.yaml @@ -0,0 +1 @@ +definitions_cuda.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/definitions_jed.yaml b/stacks/pinot-noir-gcc13/definitions_jed.yaml new file mode 100644 index 0000000..0f156fa --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_jed.yaml @@ -0,0 +1,7 @@ +definitions: + - cuda_system_codes: + - cuda + - cudnn + + - cuda_serial_codes: + - nccl diff --git a/stacks/pinot-noir-gcc13/definitions_kuma-h100.yaml b/stacks/pinot-noir-gcc13/definitions_kuma-h100.yaml new file mode 120000 index 0000000..2c65e6a --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_kuma-h100.yaml @@ -0,0 +1 @@ +definitions_cuda.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/definitions_kuma-l40s.yaml b/stacks/pinot-noir-gcc13/definitions_kuma-l40s.yaml new file mode 120000 index 0000000..2c65e6a --- /dev/null +++ b/stacks/pinot-noir-gcc13/definitions_kuma-l40s.yaml @@ -0,0 +1 @@ +definitions_cuda.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/mirrors.yaml b/stacks/pinot-noir-gcc13/mirrors.yaml new file mode 100644 index 0000000..2c338aa --- /dev/null +++ b/stacks/pinot-noir-gcc13/mirrors.yaml @@ -0,0 +1 @@ +mirrors: {} diff --git a/stacks/pinot-noir-gcc13/modules.yaml b/stacks/pinot-noir-gcc13/modules.yaml new file mode 100644 index 0000000..38fcc67 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules.yaml @@ -0,0 +1,125 @@ +modules: + default: + enable: [lmod] + lmod: + hash_length: 0 + core_compilers: + - gcc@11.2.1 + hierarchy: + - mpi + all: + environment: + set: + "{name}_ROOT": "{prefix}" + suffixes: + '+mpi': mpi + '+openmp': openmp + 'threads=openmp': openmp + '^fftw+openmp': openmp + 'hdf5=parallel': h5 + '+cuda': cuda + '+double-gpu': double-gpu + '+plumed': plumed + '+unwind': unwind + '+debug': dbg + '+ilp64': int64 + '+int64': int64 + 'version_suffix=jl': julia + autoload: run + + hide_implicits: true + + exclude: + - lmod + + gcc: + environment: + set: + CC: "{prefix}/bin/gcc" + CXX: "{prefix}/bin/g++" + F77: "{prefix}/bin/gfortran" + FC: "{prefix}/bin/gfortran" + F90: "{prefix}/bin/gfortran" + cuda@12.4.0: + environment: + append_path: + JULIA_LOAD_PATH: ":/ssoft/spack/external/julia/syrah.v1/cuda" + + openmpi: + environment: + set: + SLURM_MPI_TYPE: pmix + OMPI_MCA_btl_openib_warn_default_gid_prefix: '0' + append_path: + JULIA_LOAD_PATH: ":/ssoft/spack/external/julia/syrah.v1/mpi" + openblas threads=pthreads: + environment: + set: + OPENBLAS_NUM_THREADS: '1' + hdf5~mpi+cxx: + environment: + set: + HDF5_CC: h5cc + HDF5_CXX: h5c++ + HDF5_FC: h5fc + hdf5+mpi~cxx: + environment: + set: + HDF5_CC: h5pcc + HDF5_FC: h5pfc + intel-oneapi-mpi: + environment: + set: + I_MPI_PMI_LIBRARY: /usr/lib64/libpmi2.so + I_MPI_EXTRA_FILESYSTEM: '0' + SLURM_MPI_TYPE: pmi2 + metis: + suffixes: + ~real64: sp + molpro: + template: modules/group_restricted.lua + plumed: + environment: + set: + PLUMED_KERNEL: "{prefix}/lib/libplumedKernel.so" + unset: + - PLUMED_ROOT + quantum-espresso: + suffixes: + hdf5=parallel: hdf5 + scons: + suffixes: + '^python@:2.99': py2 + '^python@3:': py3 + + abaqus: + template: modules/group_restricted.lua + adf: + template: modules/group_restricted.lua + ams: + template: modules/group_restricted.lua + comsol: + environment: + prepend_path: + MATLABPATH: "{prefix}/mli" + crystal17: + template: modules/group_restricted.lua + fdtd: + environment: + prepend_path: + PATH: "{prefix}/mpich2/nemesis/bin" + LD_LIBRARY_PATH: "{prefix}/mpich2/nemesis/lib" + set: + SLURM_MPI_TYPE: pmi2 + gaussian: + template: modules/group_restricted.lua + spark: + environment: + prepend_path: + PATH: "/ssoft/spack/scripts/all/spark" + ucx: + environment: + unset: + - UCX_ROOT + vasp: + template: modules/group_restricted.lua diff --git a/stacks/pinot-noir-gcc13/modules_empty.yaml b/stacks/pinot-noir-gcc13/modules_empty.yaml new file mode 100644 index 0000000..21d0544 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_empty.yaml @@ -0,0 +1,3 @@ +modules: + default: + lmod: {} diff --git a/stacks/pinot-noir-gcc13/modules_helvetios.yaml b/stacks/pinot-noir-gcc13/modules_helvetios.yaml new file mode 120000 index 0000000..5be0f31 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_helvetios.yaml @@ -0,0 +1 @@ +modules_empty.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/modules_izar.yaml b/stacks/pinot-noir-gcc13/modules_izar.yaml new file mode 120000 index 0000000..5be0f31 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_izar.yaml @@ -0,0 +1 @@ +modules_empty.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/modules_jed.yaml b/stacks/pinot-noir-gcc13/modules_jed.yaml new file mode 120000 index 0000000..5be0f31 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_jed.yaml @@ -0,0 +1 @@ +modules_empty.yaml \ No newline at end of file diff --git a/stacks/pinot-noir-gcc13/modules_kuma-h100.yaml b/stacks/pinot-noir-gcc13/modules_kuma-h100.yaml new file mode 100644 index 0000000..4599ea4 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_kuma-h100.yaml @@ -0,0 +1,14 @@ +modules: + default: + lmod: + openmpi: + environment: + set: + OMPI_MCA_pml: 'ucx' + OMPI_MCA_osc: 'ucx' + UCX_NET_DEVICES: 'mlx5_2:1,mlx5_3:1' + nccl: + environment: + set: + NCCL_IB_HCA: 'mlx5_2:1,mlx5_3:1' + NCCL_SOCKET_IFNAME: 'bond0' diff --git a/stacks/pinot-noir-gcc13/modules_kuma-l40s.yaml b/stacks/pinot-noir-gcc13/modules_kuma-l40s.yaml new file mode 100644 index 0000000..1f147c1 --- /dev/null +++ b/stacks/pinot-noir-gcc13/modules_kuma-l40s.yaml @@ -0,0 +1,14 @@ +modules: + default: + lmod: + openmpi: + environment: + set: + OMPI_MCA_pml: 'ucx' + OMPI_MCA_osc: 'ucx' + UCX_NET_DEVICES: 'mlx5_0:1,mlx5_1:1' + nccl: + environment: + set: + NCCL_IB_HCA: 'mlx5_0:1,mlx5_1:1' + NCCL_SOCKET_IFNAME: 'bond0' diff --git a/stacks/pinot-noir-gcc13/packages.yaml b/stacks/pinot-noir-gcc13/packages.yaml new file mode 100644 index 0000000..4b636f1 --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages.yaml @@ -0,0 +1,26 @@ +packages: + all: + compiler: + - gcc + - aocc + - nvhpc + + providers: + mpi: [openmpi, intel-oneapi-mpi] + jpeg: [libjpeg] + zlib-api: [zlib-ng] + pkgconfig: [pkgconf] + szip: [libaec] + unwind: [libunwind] + uuid: [libuuid] + zlib-api: [zlib-ng+compat] + + require: + - spec: '^libuuid' + when: '^uuid' + + glibc: + prefer: ['%gcc@11.2.1'] + + zlib-ng: + require: ['build_system=autotools'] diff --git a/stacks/pinot-noir-gcc13/packages_helvetios.yaml b/stacks/pinot-noir-gcc13/packages_helvetios.yaml new file mode 100644 index 0000000..fe0d4ad --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_helvetios.yaml @@ -0,0 +1,8 @@ +packages: + all: + target: ["skylake_avx512"] + require: ['~cuda', '~rocm'] + + # py-torch: + # require: + # - spec: '~cuda ~cudnn ~nccl ~rocm' diff --git a/stacks/pinot-noir-gcc13/packages_izar.yaml b/stacks/pinot-noir-gcc13/packages_izar.yaml new file mode 100644 index 0000000..9ce65d9 --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_izar.yaml @@ -0,0 +1,11 @@ +packages: + all: + target: ["cannonlake"] + require: + - spec: ^openmpi +cuda + when: '%gcc ^mpi' + + - spec: cuda_arch=70 + when: '+cuda' + + - '+cuda' diff --git a/stacks/pinot-noir-gcc13/packages_jed.yaml b/stacks/pinot-noir-gcc13/packages_jed.yaml new file mode 100644 index 0000000..822d1e2 --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_jed.yaml @@ -0,0 +1,85 @@ +packages: + all: + target: ["icelake"] + require: + - "~rocm" + + - spec: cuda_arch=90 target=icelake + when: '+cuda' + # - spec: '~cuda' + # when: '%oneapi' + + - spec: '+cuda' + when: '%gcc' + + # --------------------------------------------------------------------------- + hypre: + require: + - spec: '+cuda cuda_arch=90 +unified-memory' + when: '%gcc' + + kokkos: + require: + - spec: '+cuda cuda_arch=90 +cuda_uvm +wrapper ~openmptarget' + when: '%gcc' + + kokkos-kernels: + require: + - spec: '+cuda cuda_arch=90' + when: '%gcc' + + openmpi: + require: + - spec: '+cuda cuda_arch=90 target=icelake' + + petsc: + require: + - spec: '+cuda cuda_arch=90' + when: '%gcc' + + py-tensorflow: + require: + - spec: '+cuda cuda_arch=90 +nccl' + + py-torch: + require: + - spec: '+cuda cuda_arch=90 +nccl +cudnn' + + quantum-espresso: + require: + - spec: '~cuda' + + suite-sparse: + require: + - spec: '+cuda' + + ucx: + require: + - spec: '+xpmem +cma +rdmacm +rc +ud +dc +verbs +ib_hw_tm +gdrcopy +cuda cuda_arch=90 target=icelake ~rocm' + + # --------------------------------------------------------------------------- + # Externals + # --------------------------------------------------------------------------- + pmix: + buildable: false + externals: + - spec: 'pmix@5.0.2' + prefix: /usr + + rdma-core: + buildable: false + externals: + - spec: 'rdma-core@47.1' + prefix: /usr + + slurm: + buildable: false + externals: + - spec: 'slurm@24-05-0-2' + prefix: /usr + + xpmem: + buildable: false + externals: + - spec: 'xpmem@2.7.3' + prefix: /usr diff --git a/stacks/pinot-noir-gcc13/packages_kuma-h100.yaml b/stacks/pinot-noir-gcc13/packages_kuma-h100.yaml new file mode 100644 index 0000000..a1da6ae --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_kuma-h100.yaml @@ -0,0 +1,109 @@ +packages: + all: + target: ["zen4"] + prefer: ['target=zen4'] + require: + - "~rocm" + + - spec: cuda_arch=90 + when: '+cuda' + + - spec: '+cuda' + when: '%gcc' + + # --------------------------------------------------------------------------- + cuda: + prefer: + - spec: "^gcc-runtime@12.3.0" + when: "%gcc" + - spec: "%gcc@12.3.0 target=zen4" + when: "%gcc" + require: + - '@12.4.0' + + hypre: + require: + - spec: '+cuda cuda_arch=90 +unified-memory' + when: '%gcc' + + kokkos: + require: + - spec: '+cuda +cuda_lambda cuda_arch=90 +cuda_uvm +wrapper ~openmptarget' + when: '%gcc' + + kokkos-kernels: + require: ['+cuda', '+cublas', '+cusolver', '+cusparse', 'cuda_arch=90'] + + nvshmem: + require: + - spec: '+cuda cuda_arch=90 +ibgda +nccl +ucx +mpi' + + openmpi: + require: + - spec: '+cuda cuda_arch=90' + + papi: + require: ['+nvml', '+infiniband', '+cuda'] + + paraview: + require: ['~cuda'] + + petsc: + require: + - spec: '+cuda cuda_arch=90' + when: '%gcc' + + py-tensorflow: + require: + - spec: '+cuda cuda_arch=90 +nccl' + + py-torch: + require: + - spec: '+cuda cuda_arch=90 +nccl +cudnn' + + python: + require: + - spec: 'target=zen4' + when: '%gcc@12.3.0' + + quantum-espresso: + require: + - spec: '~cuda' + + suite-sparse: + require: + - spec: '+cuda' + when: '@7.3.1' + - spec: '~cuda' + when: '@7.2.1' + + ucx: + require: + - spec: '+xpmem +cma +rdmacm +rc +ud +dc +verbs +ib_hw_tm +gdrcopy +cuda cuda_arch=90 ~rocm' + + # --------------------------------------------------------------------------- + # Externals + # --------------------------------------------------------------------------- + pmix: + buildable: false + externals: + - spec: 'pmix@5.0.2' + prefix: /usr + + rdma-core: + buildable: false + externals: + - spec: 'rdma-core@51.1' + prefix: /usr + + slurm: + buildable: false + externals: + - spec: 'slurm@24-05-0-2' + prefix: /usr + + xpmem: + buildable: false + externals: + - spec: 'xpmem@2.7.3' + prefix: /usr diff --git a/stacks/pinot-noir-gcc13/packages_kuma-l40s.yaml b/stacks/pinot-noir-gcc13/packages_kuma-l40s.yaml new file mode 100644 index 0000000..a3d8533 --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_kuma-l40s.yaml @@ -0,0 +1,106 @@ +packages: + all: + target: ["zen4"] + prefer: ["zen4"] + require: + - "~rocm" + + - spec: cuda_arch=89 + when: '+cuda' + + - spec: '+cuda' + when: '%gcc' + + # --------------------------------------------------------------------------- + cuda: + prefer: + - spec: "^gcc-runtime@12.3.0" + when: "%gcc" + - spec: "%gcc@12.3.0 target=zen4" + when: "%gcc" + require: + - '@12.4.0' + + hypre: + require: + - spec: '+cuda cuda_arch=89 +unified-memory' + when: '%gcc' + + kokkos: + require: + - spec: '+cuda +cuda_lambda cuda_arch=89 +cuda_uvm +wrapper ~openmptarget' + when: '%gcc' + + kokkos-kernels: + require: ['+cuda', '+cublas', '+cusolver', '+cusparse', 'cuda_arch=89'] + + nvshmem: + require: + - spec: '+cuda cuda_arch=89 +ibgda +nccl +ucx +mpi' + + openmpi: + require: + - spec: '+cuda cuda_arch=89' + + papi: + require: ['+nvml', '+infiniband', '+cuda'] + + paraview: + require: ['~cuda'] + + petsc: + require: + - spec: '+cuda cuda_arch=89' + when: '%gcc' + + py-tensorflow: + require: + - spec: '+cuda cuda_arch=89 +nccl' + + py-torch: + require: + - spec: '+cuda cuda_arch=89 +nccl +cudnn' + + python: + require: + - spec: 'target=zen4' + when: '%gcc@12.3.0' + + quantum-espresso: + require: + - spec: '~cuda' + + suite-sparse: + require: + - spec: '+cuda' + + ucx: + require: + - spec: '+xpmem +cma +rdmacm +rc +ud +dc +verbs +ib_hw_tm +gdrcopy +cuda cuda_arch=89 ~rocm' + + # --------------------------------------------------------------------------- + # Externals + # --------------------------------------------------------------------------- + pmix: + buildable: false + externals: + - spec: 'pmix@5.0.2' + prefix: /usr + + rdma-core: + buildable: false + externals: + - spec: 'rdma-core@51.1' + prefix: /usr + + slurm: + buildable: false + externals: + - spec: 'slurm@24-05-0-2' + prefix: /usr + + xpmem: + buildable: false + externals: + - spec: 'xpmem@2.7.3' + prefix: /usr diff --git a/stacks/pinot-noir-gcc13/packages_stack.yaml b/stacks/pinot-noir-gcc13/packages_stack.yaml new file mode 100644 index 0000000..7ae1a64 --- /dev/null +++ b/stacks/pinot-noir-gcc13/packages_stack.yaml @@ -0,0 +1,372 @@ +packages: + all: + require: + - spec: '+ipo' + when: '%gcc' + - spec: '^netlib-scalapack' + when: '%gcc ^scalapack' + + # ---------------------------------------------------------------------------- + # Requirements + # ---------------------------------------------------------------------------- + adios2: + require: ['+kokkos', '+mgard'] + + apr: + # https://issues.apache.org/jira/browse/SVN-4813 + require: ['@1.6.2'] + + arpack-ng: + prefer: ['+mpi'] + + boost: + prefer: ['~mpi'] + require: ['cxxstd=14', '+icu', '+python', '+numpy', '+atomic', '+chrono', + '+container', '+date_time', '+filesystem', '+graph', '+iostreams', '~json', + '+locale', '+log', '+math', '~pic', '+program_options', '+random', '+regex', + '+serialization', '+shared', '+signals', '~singlethreaded', '~stacktrace', + '+system', '~taggedlayout', '+test', '+thread', '+timer', '~type_erasure', + '~versionedlayout', '+wave', '+exception'] + + cairo: + # ~X avoids a dependency to python (only prefer due to gtkplus) + prefer: ['~X'] + + cuda: + require: + - spec: '+allow-unsupported-compilers' + when: '%oneapi' + + curl: + require: + - '+nghttp2' + - '+libidn2' + - '+libssh2' + - one_of: ['tls=openssl', 'tls=mbedtls'] + + emacs: + prefer: ['+tls', '+X', 'toolkit=athena'] + + expat: + prefer: ['libbsd'] + + fenics-dolfinx: + require: ['@0.8.0', '+slepc'] + + ffmpeg: + require: ['+libx264'] + + fftw: + prefer: ['+mpi', '+openmp'] + + gettext: + require: ['+libxml2', '+xz'] + + gnuplot: + require: ['@5.4.10', '+cairo'] + + hdf5: + prefer: + - spec: '@1.14.3' + require: + - spec: '+hl +threadsafe +szip +cxx +fortran' + - spec: '+ipo' + when: '%gcc' + + hypre: + prefer: + - spec: '@2.31.0 ~magma' + + intel-oneapi-mkl: + prefer: ['~cluster'] + + julia: + require: ['@1.10.4'] + + kokkos: + require: ['+openmp', '+numactl', '+memkind', '~threads', + '+aggressive_vectorization', '@4.3.01'] + + kokkos-kernels: + require: ['@4.3.01', '+openmp', '~threads', '~ipo'] + + kokkos-nvcc-wrapper: + prefer: ['@4.3.01'] + + lammps: + require: ['@20230802.3', + 'build_type=Release', '+asphere', '+atc', '+body', '+class2', + '+colloid', '+compress', '+coreshell', '+dipole', '+diffraction', + '+extra-dump', '+granular', '+h5md', '+kspace', '+latboltz', + '+lib', '+manybody', '+mc', '+misc', '+molecule', + '+mpi', '+netcdf', '+peri', '~poems', '+python', '+qeq', + '+replica ', '+rigid', '+shock', '+ml-snap', '+srd', '+voronoi', + '+plumed', '+kokkos'] + + libfabric: + require: + - spec: 'fabrics=mlx,mrail,psm3,verbs,udp,tcp,sockets,shm' + + libffi: + require: ['@3.4.6'] + + libssh2: + prefer: ['crypto=openssl'] + + libtiff: + require: ['build_system=cmake', '+pic', '+shared', '+jpeg'] + + libtool: + require: ['@2.4.6'] + + libxcb: + require: ['+use_spack_interpreter'] + + libxml2: + # python depends on libxml2 this avoid cyclic dependency + require: ['~python'] + + likwid: + require: ['@5.3.0'] + + llvm: + # avoid compiler in lmod module + prefer: ['~clang'] + require: + - spec: '~cuda' + when: '@15:' + + m4: + require: ['+sigsegv'] + + magma: + # https://groups.google.com/a/icl.utk.edu/g/magma-user/c/l2XWTKmuBH0 + require: ['~ipo'] + + mbedtls: + prefer: ['@3.3.0'] + + mesa: + require: ['~llvm', '+opengl', '+opengles', '+osmesa'] + + meson: + prefer: ['@1.2.1'] + + metis: + require: ['+real64'] + + mgard: + require: ['~cuda'] + + mpfr: + require: ['@4.0.2'] + + netcdf-c: + prefer: ['+mpi'] + + openblas: + require: ['build_system=makefile'] + prefer: ['threads=pthreads symbol_suffix=none ~ilp64'] + + opencv: + prefer: ['+vtk', '+python3'] + + openmpi: + require: + - spec: '@5.0.3 fabrics=ofi,ucx,verbs schedulers=slurm ~rsh +romio romio-filesystem=gpfs +internal-pmix' + + openssl: + prefer: ['+shared', 'certs=system', '~docs'] + + pango: + prefer: [~X] + + papi: + require: ['+powercap', '+rapl'] + + petsc: + require: + - spec: '+hypre +mumps +saws +scalapack +mpi +suite-sparse +kokkos' + + python: + require: + - spec: '+ssl +tkinter +crypt +bz2 +pyexpat +libxml2 +ctypes +uuid ~sqlite3' + - spec: '+optimizations' + when: '%gcc' + prefer: + - spec: '%gcc@12.3.0' + when: '%gcc' + + py-cython: + require: + - one_of: ['@0.29.36', '@3.0.8'] + prefer: ['@3.0.8'] + + py-fenics-dolfinx: + require: ['@0.8.0'] + + py-numpy: + prefer: ['@1.26.4'] + + py-pandas: + prefer: ['@2.2.1'] + + py-tensorflow: + require: ['+mpi', '+mkl'] + + py-torch: + require: ['+mpi'] + + py-scipy: + require: ['@1.13.0'] + + py-setuptools: + require: ['@63.4.3'] + + rust: + require: ['+dev'] + + scotch: + prefer: ['~mpi'] + + sirius: + prefer: ['+fortran', '+elpa', '+wannier90'] + + slepc: + require: + - spec: '^arpack-ng +mpi' + + suite-sparse: + require: + - '+graphblas' + - one_of: ['@7.3.1', '@7.2.1'] + prefer: ['@7.3.1'] + + tk: + require: ['+xft', '+xss'] + + ucx: + require: + - spec: '+rdmacm +rc +dc +ud +cma +verbs' + + vtk: + require: + - spec: '~python ++mpi +xdmf +ffmpeg' + + xmlto: + require: ['@0.0.29'] + + # ---------------------------------------------------------------------------- + # System dependencies + # ---------------------------------------------------------------------------- + egl: + buildable: false + externals: + - spec: 'egl@21.3.4' + prefix: /usr + + ninja: + buildable: false + externals: + - spec: 'ninja@1.10.2' + prefix: /usr + + opengl: + buildable: false + externals: + - spec: 'opengl@4.6' + prefix: /usr + + pmix: + buildable: false + externals: + - spec: 'pmix@5.0.1' + prefix: /usr + + rdma-core: + buildable: false + externals: + - spec: 'rdma-core@47.1' + prefix: /usr + + slurm: + buildable: false + externals: + - spec: 'slurm@23-11-7-1' + prefix: /usr + + + # ---------------------------------------------------------------------------- + # Externals + # ---------------------------------------------------------------------------- + abaqus: + buildable: false + permissions: {read: group, group: abaqus-soft} + externals: + - {spec: abaqus@2019, prefix: /ssoft/spack/external/abaqus/2019} + - {spec: abaqus@2023, prefix: /ssoft/spack/external/abaqus/2023} + ansys: + buildable: false + externals: + - {spec: ansys@2020R2, prefix: /ssoft/spack/external/ansys/2020R2/v202} + - {spec: ansys@2022R1, prefix: /ssoft/spack/external/ansys/2022R1/v221} + - {spec: ansys@2022R2, prefix: /ssoft/spack/external/ansys/2022R2/v222} + - {spec: ansys@2024R1, prefix: /ssoft/spack/external/ansys/2024R1/v241} + cfdplusplus: + buildable: false + externals: + - {spec: cfdplusplus@16.1, prefix: /ssoft/spack/external/CFD++/2016.05} + - {spec: cfdplusplus@19.1, prefix: /ssoft/spack/external/CFD++/19.1} + comsol: + buildable: false + permissions: {read: group, group: comsol-soft} + externals: + - {spec: comsol@5.6, prefix: /ssoft/spack/external/comsol/5.6/comsol56/multiphysics/} + - {spec: comsol@6.0, prefix: /ssoft/spack/external/comsol/6.0} + - {spec: comsol@6.2, prefix: /ssoft/spack/external/comsol/6.2} + fdtd: + buildable: false + permissions: {read: group, group: fdtd-soft} + externals: + - {spec: fdtd@2020-R2-2387, prefix: /ssoft/spack/external/fdtd/8.24.2387} + - {spec: fdtd@2020-R2.4-2502, prefix: /ssoft/spack/external/fdtd/2020-R2.4-2502} + - {spec: fdtd@2021-R2.2-2806, prefix: /ssoft/spack/external/fdtd/2021-R2.2-2806} + - {spec: fdtd@2022-R1.1-2963, prefix: /ssoft/spack/external/fdtd/2022-R1.1-2963} + gaussian: + buildable: false + externals: + - {spec: gaussian@g16-A.03, prefix: /ssoft/spack/external/gaussian/g16-A.03/avx2} + - {spec: gaussian@g16-C.01, prefix: /ssoft/spack/external/gaussian/g16-C.01/avx2} + gurobi: + buildable: false + externals: + - {spec: gurobi@8.1.1, prefix: /ssoft/spack/external/gurobi/8.1.1} + - {spec: gurobi@9.5.2, prefix: /ssoft/spack/external/gurobi/9.5.2} + - {spec: gurobi@10.0.1, prefix: /ssoft/spack/external/gurobi/10.0.1} + maple: + buildable: false + externals: + - {spec: maple@2017, prefix: /ssoft/spack/external/Maple/2017} + mathematica: + buildable: false + externals: + - {spec: mathematica@11.1.1, prefix: /ssoft/spack/external/Mathematica/11.1.1} + - {spec: mathematica@13.0, prefix: /ssoft/spack/external/Mathematica/13.0} + matlab: + buildable: false + externals: + - {spec: matlab@R2018a, prefix: /ssoft/spack/external/MATLAB/R2018a} + - {spec: matlab@R2019b, prefix: /ssoft/spack/external/MATLAB/R2019b} + - {spec: matlab@R2024a, prefix: /ssoft/spack/external/MATLAB/R2024a} + molpro: + buildable: false + externals: + - {spec: molpro@2022.3.0, prefix: /ssoft/spack/external/molpro/2022.3.0/mpi} + smr: + buildable: false + externals: + - {spec: smr@2017.0, prefix: /ssoft/spack/external/SMR/2017.06} + totalview: + externals: + - {spec: totalview@2017.2.11, prefix: /ssoft/spack/external/toolworks/totalview.2017.2.11} + - {spec: totalview@2020.3.11, prefix: /ssoft/spack/external/toolworks/totalview.2020.3.11} diff --git a/stacks/pinot-noir-gcc13/spack.yaml b/stacks/pinot-noir-gcc13/spack.yaml new file mode 100644 index 0000000..a942fee --- /dev/null +++ b/stacks/pinot-noir-gcc13/spack.yaml @@ -0,0 +1,501 @@ +spack: + include: + - compiler_definitions.yaml + + - packages_stack.yaml + - packages_env.yaml + + - modules_stack.yaml + - modules_env.yaml + + - definitions_env.yaml + + - config_stack.yaml + + definitions: + # ------------------------------------------------------------------------- + # PE definition + # ------------------------------------------------------------------------- + - mpi_gcc: + - openmpi@5.0.3 + + - mpi_oneapi: + - intel-oneapi-mpi@2021.12.1 + + - blas_gcc: + - openblas@0.3.27 + + - blas_oneapi: + - intel-oneapi-mkl@2024.1.0 + + - python_gcc: + - python@3.11.7 + + - python_oneapi: + - python@3.11.7 + + # ------------------------------------------------------------------------- + # Core packages + # ------------------------------------------------------------------------- + - core_codes: + - bzip2 + - cmake + - emacs + - fastqc + - fio + - git + - git-lfs + - gmp + - gnuplot + - gzip + - intel-oneapi-advisor + - intel-oneapi-inspector + - intel-oneapi-vtune + - libarchive + - libjpeg-turbo + - libpng + - libtiff + - libxml2 + - likwid + - lmod + - mpfr + - neovim + #- ninja + - papi + - parallel + - picard + - rclone + - sbt + - sratoolkit + - subversion + - tar + - tcl + - tk + - tmux + - trimmomatic + - xclip + - zlib-ng + + # ------------------------------------------------------------------------- + # Serial codes + # ------------------------------------------------------------------------- + - serial_codes: + - fftw +openmp ~~mpi + - fftw ~~openmp ~~mpi + - gsl + - hdf5@1.14.3 ~~mpi + - htslib + - intel-oneapi-tbb + - jasper + - kallisto ^hdf5 ~~mpi + - kokkos + - kokkos-kernels + - mafft + - metis + - muscle + - netcdf-c ~~mpi + - netcdf-fortran ^netcdf-c ~~mpi + - nfft ^fftw~~mpi~~openmp + - python + - scotch ~~mpi + - star + - subread + - unblur ^fftw~~mpi ~~openmp + - voropp + + - gcc_serial_codes: + - bwa + - eigen + - ffmpeg + - glpk+gmp + - hwloc + - intel-oneapi-mkl + - libxc + - qperf + - ncview ^netcdf-c ~~mpi ~parallel-netcdf + - sox + - stacks + + - oneapi_serial_codes: + - abaqus@2023 + - intel-oneapi-ipp + + # ------------------------------------------------------------------------- + # Empty to specialize in environments + # ------------------------------------------------------------------------- + - cuda_system_codes: [] + + - cuda_serial_codes: [] + + - cuda_mpi_codes: [] + + # ------------------------------------------------------------------------- + # Blas dependent codes + # ------------------------------------------------------------------------- + - blas_codes: + - arpack-ng ~~mpi + - superlu + - suite-sparse + + - gcc_blas_codes: + - armadillo +hdf5 ^arpack-ng ~~mpi ^hdf5 ~~mpi + - octave + + # ------------------------------------------------------------------------- + # Python packages + # ------------------------------------------------------------------------- + - python_codes: + - bedtools2 + - bowtie2 + - cairo + - mercurial + - prinseq-lite + - py-absl-py + - py-astunparse + - py-backports-entry-points-selectable + - py-certifi + - py-charset-normalizer + - py-cycler + - py-cython + - py-distlib + - py-filelock + - py-gast + - py-google-pasta + - py-idna + - py-kiwisolver + - py-mpmath + - py-packaging + - py-pillow + - py-pip + - py-platformdirs + - py-ply + - py-protobuf + - py-pybind11 + - py-pyparsing + - py-python-dateutil + - py-pytz + - py-requests + - py-semver + - py-six + - py-sympy + - py-termcolor + - py-urllib3 + - py-virtualenv + - py-wheel + - py-wrapt + - samtools + - scons + - snakemake + + - python_blas_codes: + - boost ~~mpi + #- gmsh ~~mpi +hdf5 +cgns +eigen ~opencascade +openmp ~fltk ~med + - iq-tree + - py-biopython + - py-keras-preprocessing + - py-macs3 + - py-matplotlib + - py-numpy + - py-opt-einsum + - py-pandas + - py-pybigwig + - py-xarray + - valgrind ~~mpi + + - gcc_python_codes: + - blast-plus + - cistem ^fftw~~mpi + - ctffind ^fftw ~~mpi + - gatk + - hisat2 + - imagemagick +ghostscript + - julia+openlibm + - libgd + - mesa + - mummer + - node-js + - rust + - spades + - xgboost + + - gcc_python_blas_codes: + - caffe +python ^hdf5~mpi + - gdb +tui +source-highlight +xz + - openbabel ++python ^boost ~~mpi + - polymake ^cddlib@0.94h + - py-cryolobm + - py-deeptools + - py-h5py ~~mpi + - py-pymol ^hdf5~mpi + - py-scikit-learn + - py-scipy + #- py-statsmodels + - py-theano + - r + + # ------------------------------------------------------------------------- + # Parallel codes + # ------------------------------------------------------------------------- + - mpi_codes: + - fftw ++mpi +openmp + - hdf5@1.14.3 ++mpi + - openfoam-org +metis + - osu-micro-benchmarks +graphing + - parmetis + - phylobayesmpi + - scotch ++mpi + - netcdf-c + - netcdf-fortran + - parmetis + - scorep + + - mpi_python_codes: + - py-mpi4py + + - gcc_mpi_codes: + - wrf ~pnetcdf build_type=dm+sm + + - mpi_blas_codes: + - arpack-ng ++mpi + - hypre@2.31.0 + - mumps@5.6.2 + - superlu-dist@8.2.1 + #- quantum-espresso ++mpi +scalapack +gipaw + #- quantum-espresso ++mpi +scalapack +gipaw hdf5=parallel + + - gcc_mpi_blas_codes: + - armadillo +hdf5 ^arpack-ng ++mpi ^hdf5 ++mpi + - gmsh ++mpi +eigen +openmp +hdf5 ~fltk ~opencascade ~med ^mmg ~vtk + - cpmd ~openmp + - elmerfem +mumps +openmp +hypre + - netlib-scalapack + - trilinos + - vtk + - yambo ++mpi io=iotk,etsf-io + + - mpi_blas_python_codes: + - boost ++mpi + - cgal + - iq-tree@1.6.12++mpi + - neuron ++mpi +python + - petsc@3.21.1 + - plumed + - py-petsc4py + - slepc + - sirius + + - gcc_mpi_blas_python_codes: + # - eman2 ++mpi + - adios2 + - cp2k ++mpi +plumed +openmp smm=blas + # - fenics +parmetis +hdf5 +scotch +suite-sparse ~vtk ~trilinos + - fenics-dolfinx + - gromacs ++mpi +plumed + - lammps + - opencv + - openfoam +metis + - paraview +shared +python +hdf5 +opengl2 + - py-fenics-dolfinx + - py-h5py ++mpi + - py-horovod + - py-keras + - py-tensorflow + - py-torch + - py-torchvision + - relion ~mklfft + - topaz + + # ------------------------------------------------------------------------- + # External packages + # ------------------------------------------------------------------------- + - external_packages: [] + - when: env['environment_type'] != 'cloud' + external_packages: + - ansys + - cfdplusplus + - comsol + - fdtd + - gurobi + - gaussian + - matlab + - maple + - mathematica + - molpro + - smr + + - when: env['environment_type'] != 'cloud' + blas_mpi_codes: + - vasp +hdf5 +scalapack +shmem +wannier90 + + # ------------------------------------------------------------------------- + # Generic definitions + # ------------------------------------------------------------------------- + - mpis: + - $mpi_oneapi + - $mpi_gcc + + specs: + - matrix: + - [$compilers_specs] + + - matrix: + - [$blas_gcc] + - [$%compiler_gcc] + + - matrix: + - [$mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$core_codes] + - [$%system_compiler] + + - matrix: + - [$cuda_system_codes] + - [$%system_compiler] + + - matrix: + - [$serial_codes] + - [$%compiler_gcc] + + - matrix: + - [$gcc_serial_codes] + - [$%compiler_gcc] + + - matrix: + - [$cuda_serial_codes] + - [$%compiler_gcc] + + - matrix: + - [$blas_codes] + - [$^blas_gcc] + - [$%compiler_gcc] + + - matrix: + - [$gcc_blas_codes] + - [$^blas_gcc] + - [$%compiler_gcc] + + - matrix: + - [$python_codes] + - [$^python_gcc] + - [$%compiler_gcc] + + - matrix: + - [$gcc_python_codes] + - [$^python_gcc] + - [$%compiler_gcc] + + - matrix: + - [$python_blas_codes] + - [$^python_gcc] + - [$^blas_gcc] + - [$%compiler_gcc] + + - matrix: + - [$gcc_python_blas_codes] + - [$^python_gcc] + - [$^blas_gcc] + - [$%compiler_gcc] + + - matrix: + - [$mpi_codes] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$mpi_python_codes] + - [$^python_gcc] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$gcc_mpi_codes] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$cuda_mpi_codes] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$mpi_blas_codes] + - [$^blas_gcc] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$mpi_blas_python_codes] + - [$^python_gcc] + - [$^blas_gcc] + - [$^mpi_gcc] + - [$%compiler_gcc] + + - matrix: + - [$gcc_mpi_blas_python_codes] + - [$^python_gcc] + - [$^blas_gcc] + - [$^mpi_gcc] + - [$%compiler_gcc] + + # -------------------------------------------------------------------------- + - matrix: + - [$serial_codes] + - [$%compiler_oneapi] + + - matrix: + - [$blas_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$mpi_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$oneapi_serial_codes] + - [$%compiler_oneapi] + + - matrix: + - [$blas_codes] + - [$^blas_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$python_codes] + - [$^python_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$python_blas_codes] + - [$^python_oneapi] + - [$^blas_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$mpi_codes] + - [$^mpi_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$mpi_python_codes] + - [$^python_oneapi] + - [$^mpi_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$mpi_blas_codes] + - [$^blas_oneapi] + - [$^mpi_oneapi] + - [$%compiler_oneapi] + + - matrix: + - [$mpi_blas_python_codes] + - [$^python_oneapi] + - [$^blas_oneapi] + - [$^mpi_oneapi] + - [$%compiler_oneapi] + + view: false +# default: +# root: /stack/packages/ diff --git a/stacks/pinot-noir-gcc13/templates/modules/group_restricted.lua b/stacks/pinot-noir-gcc13/templates/modules/group_restricted.lua new file mode 100644 index 0000000..1511796 --- /dev/null +++ b/stacks/pinot-noir-gcc13/templates/modules/group_restricted.lua @@ -0,0 +1,10 @@ +{% extends "modules/modulefile.lua" %} +{% block footer %} +-- Access is granted only to specific groups, most likely because the software is licensed +if not isDir("{{ spec.prefix }}") then + LmodError ( + "You don't have the necessary rights to run \"{{ spec.name }}\".\n\n", + "\tPlease write an e-mail to 1234@epfl.ch if you need further information on how to get access to it.\n" + ) +end +{% endblock %} -- GitLab