diff --git a/env/merlin/all/spack.yaml b/env/merlin/all/spack.yaml index c8aaa01..cf11dd5 100644 --- a/env/merlin/all/spack.yaml +++ b/env/merlin/all/spack.yaml @@ -2,112 +2,17 @@ spack: concretizer: unify: when_possible definitions: - - mpi: - - ^openmpi@4.1.4%gcc@8.3.0+cuda fabrics=ucx,xpmem,knem,ofi,cma,hcoll schedulers=slurm - +pmi ^ucx@1.13.0 ^cuda@11.5.1 ^slurm@21-08-8-2 ^hwloc@2.7.1 ^knem@1.1.4 ^xpmem@2.6.5-36 - ^pmix@4.1.2 - - python: - - ^py-numpy@1.19.5%gcc@8.3.0 ^python@3.6.13%gcc@8.3.0 - - blas: - - ^openblas%gcc@8.3.0 - include: - - sysconfigs/config.yaml - - sysconfigs/compilers.yaml - - sysconfigs/packages.yaml -#>>> modules.yaml - modules: - Batchsystem: - use_view: Batchsystem - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/Batchsystem - tcl: - blacklist_implicits: true - include: + - Compilers: &Compilers + - '%clang@12.0.0' + - '%dpcpp@2022.1.0' + - '%gcc@8.3.0' + - '%gcc@12.1.0' + - '%intel@2021.6.0' + - '%nvhpc@21.5' + - '%oneapi@2022.1.0' + - Batchsystem_pckgs: &Batchsystem_pckgs - slurm - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/Batchsystem - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - slurm: - environment: - prepend_path: - SLURM_CONF: /etc/slurm/slurm.conf - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - MPI: - use_view: MPI - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/MPI - tcl: - blacklist_implicits: true - include: - - amrex - - boxlib - - cp2k - - cpmd - - elegant - - elpa - - fftw - - gromacs - - lammps - - astra - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/MPI - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - Compiler: - use_view: Compiler - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/Compiler - tcl: - blacklist_implicits: true - include: + - Compiler_pckgs: &Compiler_pckgs - atlas - clapack - boost @@ -127,241 +32,15 @@ spack: - root - superlu - vtk - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - intel-oneapi-mpi: - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/MPI - set: - I_MPI_CXX: mpiicpc - I_MPI_F77: mpiifort - I_MPI_F90: mpiifort - I_MPI_FC: mpiifort - I_MPI_ICC: mpiicc - MPIEXEC: mpiexec.hydra - MPIFC: mpiifort - MPIFORTRAN: mpiifort - MPIRUN: mpirun - mpich: - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/MPI - set: - MPIEXEC: ${prefix}/bin/mpiexec - MPIFC: ${prefix}/bin/mpif90 - MPIFORTRAN: ${prefix}/bin/mpif90 - MPIRUN: ${prefix}/bin/mpirun - openblas: - environment: - set: - BLASLIB: ${prefix}/libopenblas.a - openmpi: - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/MPI - set: - MPIEXEC: ${prefix}/bin/mpiexec - MPIFC: ${prefix}/bin/mpif90 - MPIFORTRAN: ${prefix}/bin/mpif90 - MPIRUN: ${prefix}/bin/mpirun - root: - environment: - set: - ROOTSYS: ${prefix} - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - Cuda: - use_view: Cuda - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/cuda - tcl: - blacklist_implicits: true - include: + - Cuda_pckgs: &Cuda_pckgs - cuda - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - ${PACKAGE}_PATH: '{prefix}' - LIBRARY_PATH: '{prefix}/targets/x86_64-linux/lib/stubs' - set: - ${PACKAGE}_DIR: '{prefix}' - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_PATH: '{prefix}' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - EM: - use_view: EM - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/EM - tcl: - blacklist_implicits: true - include: + - EM_pckgs: &EM_pckgs - cistem - ctffind - motioncor2 - relion - unblur - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/EM - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - HDF5: - use_view: HDF5 - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/HDF5 - tcl: - blacklist_implicits: true - include: - - alps - - h5hut+mpi - - hdf5-blosc - - ioapi - - hdf5+mpi - - netcdf-c - - netcdf-fortran - - netcdf-c - - trilinos - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - - HDF5_serial - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/HDF5 - set: - ${PACKAGE}_ROOT: '{prefix}' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - HDF5_serial: - use_view: HDF5_serial - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/HDF5_serial - tcl: - blacklist_implicits: true - include: - - hdf5~mpi - - h5hut~mpi - - ncview - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - - HDF5_serial - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/HDF5_serial - set: - ${PACKAGE}_DIR: '{prefix}' - ${PACKAGE}_HOME: '{prefix}' - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib64' - ${PACKAGE}_PREFIX: '{prefix}' - ${PACKAGE}_ROOT: '{prefix}' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - Librairies: - use_view: Librairies - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/Librairies - tcl: - blacklist_implicits: true - include: + - Librairies_pckgs: &Librairies_pckgs - alsa-lib - gdrcopy - giflib @@ -379,78 +58,37 @@ spack: - wxwidgets - x264 - zlib - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/Librairies - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - MX: - use_view: MX - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/MX - tcl: - blacklist_implicits: true - include: + - MX_pckgs: &MX_pckgs - cbflib - lz4 - openbabel - visit - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/MX - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - Programming: - use_view: Programming - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/Programming - tcl: - blacklist_implicits: true - include: + - HDF5_pckgs: &HDF5_pckgs + - alps + - h5hut+mpi + - hdf5-blosc + - ioapi + - hdf5+mpi + - netcdf-c + - netcdf-fortran + - netcdf-c + - trilinos + - HDF5_serial_pckgs: &HDF5_serial_pckgs + - hdf5~mpi + - h5hut~mpi + - ncview + - MPI_pckgs: &MPI_pckgs + - amrex + - boxlib + - cp2k + - cpmd + - elegant + - elpa + - fftw + - gromacs + - lammps + - astra + - Programming_pckgs: &Programming_pckgs - autoconf - automake - binutils @@ -474,51 +112,7 @@ spack: - r - tcl - tk - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/Programming - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - nvhpc: - environment: - set: - ARCH_VERSION: $NVARCH/'$env(PGI_VERSION)' - CPP: '{prefix}/$ARCH_VERSION/compilers/bin/nvprepro' - F90: '{prefix}/$ARCH_VERSION/compilers/bin/pgf90' - F95: '{prefix}/$ARCH_VERSION/compilers/bin/pgf95' - FORTRAN: '{prefix}/$ARCH_VERSION/compilers/bin/pgfortran' - NVARCH: '{arch}' - NVCOMPILERS: '{prefix}' - PGI: '{prefix}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - System: - use_view: System - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/System - tcl: - blacklist_implicits: true - include: + - System_pckgs: &System_pckgs - bash - filebench - ior @@ -526,40 +120,7 @@ spack: - nmap - patchelf - unison - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' - all: - autoload: direct - conflict: - - '{name}' - environment: - prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/System - set: - ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' - ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' - ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} - Tools: - use_view: Tools - arch_folder: false - enable: - - tcl - roots: - tcl: /afs/psi.ch/sys/spack-rhel7/Tools - tcl: - blacklist_implicits: true - include: + - Tools_pckgs: &Tools_pckgs - aria2 - asciidoc - coreutils @@ -588,313 +149,506 @@ spack: - visit - xmlto - xz - exclude: - - '%clang@12.0.0' - - '%dpcpp@2022.1.0' - - '%gcc@8.3.0' - - '%gcc@12.1.0' - - '%intel@2021.6.0' - - '%nvhpc@21.5' - - '%oneapi@2022.1.0' + include: + - sysconfigs/config.yaml + - sysconfigs/compilers.yaml + - sysconfigs/packages.yaml +#>>> modules.yaml + modules: + Batchsystem: + use_view: Batchsystem + arch_folder: false + enable: + - tcl + roots: + tcl: &Batchsystem_module_root /afs/psi.ch/sys/spack-rhel7/Batchsystem + tcl: + blacklist_implicits: true + include: *Batchsystem_pckgs + exclude: *Compilers all: autoload: direct conflict: - - '{name}' + - '{name}' environment: prepend_path: - MODULEPATH: /afs/psi.ch/sys/spack-rhel7/Tools + # equivalent to module-addgroup Batchsystem + MODULEPATH: *Batchsystem_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + slurm: + environment: + prepend_path: + SLURM_CONF: '/etc/slurm/slurm.conf' + projections: &unified_modules_projections + all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} + ^mpi: 'modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version}' + ~mpi: 'modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version}' + threads=openmp: 'modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version}' + MPI: + use_view: MPI + arch_folder: false + enable: + - tcl + roots: + tcl: &MPI_module_root /afs/psi.ch/sys/spack-rhel7/MPI + tcl: + blacklist_implicits: true + include: *MPI_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + # equivalent to module-addgroup MPI + prepend_path: + MODULEPATH: *MPI_module_root set: ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' ${PACKAGE}_VERSION: '{version}' - projections: - all: modulefiles/{compiler.name}/{compiler.version}/{name}/{version} - ^mpi: modulefiles/{compiler.name}/{compiler.version}/{name}/{version}/{^mpi.name}/{^mpi.version} - ~mpi: modulefiles/{compiler.name}/{compiler.version}/{name}_serial/{version} - threads=openmp: modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version} + projections: *unified_modules_projections + Compiler: + use_view: Compiler + arch_folder: false + enable: + - tcl + roots: + tcl: /afs/psi.ch/sys/spack-rhel7/Compiler + tcl: + blacklist_implicits: true + include: *Compiler_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + intel-oneapi-mpi: + environment: + prepend_path: + # equivalent to module-addgroup MPI + MODULEPATH: *MPI_module_root + set: + I_MPI_CXX: 'mpiicpc' + I_MPI_F77: 'mpiifort' + I_MPI_F90: 'mpiifort' + I_MPI_FC: 'mpiifort' + I_MPI_ICC: 'mpiicc' + MPIEXEC: 'mpiexec.hydra' + MPIFC: 'mpiifort' + MPIFORTRAN: 'mpiifort' + MPIRUN: 'mpirun' + mpich: + environment: + prepend_path: + # equivalent to module-addgroup MPI + MODULEPATH: *MPI_module_root + set: + MPIEXEC: ${prefix}/bin/mpiexec + MPIFC: ${prefix}/bin/mpif90 + MPIFORTRAN: ${prefix}/bin/mpif90 + MPIRUN: ${prefix}/bin/mpirun + openblas: + environment: + set: + BLASLIB: ${prefix}/libopenblas.a + openmpi: + environment: + prepend_path: + # equivalent to module-addgroup MPI + MODULEPATH: *MPI_module_root + set: + MPIEXEC: ${prefix}/bin/mpiexec + MPIFC: ${prefix}/bin/mpif90 + MPIFORTRAN: ${prefix}/bin/mpif90 + MPIRUN: ${prefix}/bin/mpirun + root: + environment: + set: + ROOTSYS: ${prefix} + projections: *unified_modules_projections + Cuda: + use_view: Cuda + arch_folder: false + enable: + - tcl + roots: + tcl: &Cuda_module_root /afs/psi.ch/sys/spack-rhel7/cuda + tcl: + blacklist_implicits: true + include: *Cuda_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup cuda + MODULEPATH: *Cuda_module_root + prepend_path: + ${PACKAGE}_PATH: '{prefix}' + LIBRARY_PATH: '{prefix}/lib64/stubs' + LIBRARY_PATH: '{prefix}/targets/x86_64-linux/lib/stubs' + set: + ${PACKAGE}_DIR: '{prefix}' + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_PATH: '{prefix}' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + EM: + use_view: EM + arch_folder: false + enable: + - tcl + roots: + tcl: &EM_module_root /afs/psi.ch/sys/spack-rhel7/EM + tcl: + blacklist_implicits: true + include: *EM_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup EM + MODULEPATH: *EM_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + HDF5: + use_view: HDF5 + arch_folder: false + enable: + - tcl + roots: + tcl: &HDF5_module_root /afs/psi.ch/sys/spack-rhel7/HDF5 + tcl: + blacklist_implicits: true + include: *HDF5_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + - 'HDF5_serial' + environment: + prepend_path: + # equivalent to module-addgroup HDF5 + MODULEPATH: *HDF5_module_root + set: + ${PACKAGE}_ROOT: '{prefix}' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + projections: *unified_modules_projections + HDF5_serial: + use_view: HDF5_serial + arch_folder: false + enable: + - tcl + roots: + tcl: &HDF5_serial_module_root /afs/psi.ch/sys/spack-rhel7/HDF5_serial + tcl: + blacklist_implicits: true + include: *HDF5_serial_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + - 'HDF5_serial' + environment: + prepend_path: + # equivalent to module-addgroup HDF5_serial + MODULEPATH: *HDF5_serial_module_root + set: + ${PACKAGE}_DIR: '{prefix}' + ${PACKAGE}_HOME: '{prefix}' + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib64' + ${PACKAGE}_PREFIX: '{prefix}' + ${PACKAGE}_ROOT: '{prefix}' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + Librairies: + use_view: Librairies + arch_folder: false + enable: + - tcl + roots: + tcl: &Librairies_module_root /afs/psi.ch/sys/spack-rhel7/Librairies + tcl: + blacklist_implicits: true + include: *Librairies_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup Librairies + MODULEPATH: *Librairies_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + MX: + use_view: MX + arch_folder: false + enable: + - tcl + roots: + tcl: &MX_module_root /afs/psi.ch/sys/spack-rhel7/MX + tcl: + blacklist_implicits: true + include: *MX_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup MX + MODULEPATH: *MX_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + Programming: + use_view: Programming + arch_folder: false + enable: + - tcl + roots: + tcl: &Programming_module_root /afs/psi.ch/sys/spack-rhel7/Programming + tcl: + blacklist_implicits: true + include: *Programming_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup Programming + MODULEPATH: *Programming_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + nvhpc: + environment: + set: + ARCH_VERSION: $NVARCH/'$env(PGI_VERSION)' + CPP: '{prefix}/$ARCH_VERSION/compilers/bin/nvprepro' + F90: '{prefix}/$ARCH_VERSION/compilers/bin/pgf90' + F95: '{prefix}/$ARCH_VERSION/compilers/bin/pgf95' + FORTRAN: '{prefix}/$ARCH_VERSION/compilers/bin/pgfortran' + NVARCH: '{arch}' + NVCOMPILERS: '{prefix}' + PGI: '{prefix}' + projections: *unified_modules_projections + System: + use_view: System + arch_folder: false + enable: + - tcl + roots: + tcl: &System_module_root /afs/psi.ch/sys/spack-rhel7/System + tcl: + blacklist_implicits: true + include: *System_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + prepend_path: + # equivalent to module-addgroup System + MODULEPATH: *System_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections + Tools: + use_view: Tools + arch_folder: false + enable: + - tcl + roots: + tcl: &Tools_module_root /afs/psi.ch/sys/spack-rhel7/Tools + tcl: + blacklist_implicits: true + include: *Tools_pckgs + exclude: *Compilers + all: + autoload: direct + conflict: + - '{name}' + environment: + # equivalent to module-addgroup Tools + prepend_path: + MODULEPATH: *Tools_module_root + set: + ${PACKAGE}_INCLUDE_DIR: '{prefix}/include' + ${PACKAGE}_LIBRARY_DIR: '{prefix}/lib' + ${PACKAGE}_VERSION: '{version}' + projections: *unified_modules_projections prefix_inspections: - ? '' - : - CMAKE_PREFIX_PATH + '': + - CMAKE_PREFIX_PATH bin: - - PATH + - PATH include: - - C_INCLUDE_PATH - - CPLUS_INCLUDE_PATH + - C_INCLUDE_PATH + - CPLUS_INCLUDE_PATH lib: - - LIBRARY_PATH - - LD_LIBRARY_PATH + - LIBRARY_PATH + - LD_LIBRARY_PATH lib/pkgconfig: - - PKG_CONFIG_PATH + - PKG_CONFIG_PATH lib64: - - LIBRARY_PATH - - LD_LIBRARY_PATH + - LIBRARY_PATH + - LD_LIBRARY_PATH lib64/pkgconfig: - - PKG_CONFIG_PATH + - PKG_CONFIG_PATH man: - - MANPATH + - MANPATH share/aclocal: - - ACLOCAL_PATH + - ACLOCAL_PATH share/man: - - MANPATH + - MANPATH share/pkgconfig: - - PKG_CONFIG_PATH + - PKG_CONFIG_PATH #<<< + # specs definitions + definitions: + - mpi: + - ^openmpi@4.1.4%gcc@8.3.0+cuda fabrics=ucx,xpmem,knem,ofi,cma,hcoll schedulers=slurm + +pmi ^ucx@1.13.0 ^cuda@11.5.1 ^slurm@21-08-8-2 ^hwloc@2.7.1 ^knem@1.1.4 ^xpmem@2.6.5-36 + ^pmix@4.1.2 + - python: + - ^py-numpy@1.19.5%gcc@8.3.0 ^python@3.6.13%gcc@8.3.0 + - blas: + - ^openblas%gcc@8.3.0 specs: - # - matrix: - # - [alps, geant4] - # - ['%gcc@8.3.0'] - # - [$mpi] - # - [$blas] - # - [^boost@1.63.0+python+numpy cxxstd=11 +icu ^icu4c cxxstd=11] - # - [$python] - # - matrix: - # - [gromacs, h5hut+mpi, lammps, visit] - # - ['%gcc@12.1.0'] - # - [$mpi] - # - [$blas] - # - [$python] - # - matrix: - # - [cp2k@9.1] - # - ['%oneapi'] - - matrix: - - [relion +cuda] - - ['%nvhpc'] - - [^openmpi%nvhpc] - - [^openblas] - - [^llvm%gcc@8.3.0] + - matrix: + - [alps, geant4] + - ['%gcc@8.3.0'] + - [$mpi] + - [$blas] + - [^boost@1.63.0+python+numpy cxxstd=11 +icu ^icu4c cxxstd=11] + - [$python] + - matrix: + - [gromacs, h5hut+mpi, lammps, visit] + - ['%gcc@12.1.0'] + - [$mpi] + - [$blas] + - [$python] + - matrix: + - [cp2k@9.1] + - ['%oneapi'] + - matrix: + - [relion +cuda] + - ['%nvhpc'] + - [^openmpi%nvhpc] + - [$blas] + - [$python] + - [^llvm%gcc@8.3.0] view: Batchsystem: + link: all + link_type: symlink + projections: &unified_projections + ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' + all: '{name}/{version}/{compiler.name}/{compiler.version}' + ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' + threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' root: /afs/psi.ch/sys/spack-rhel7/Batchsystem - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - slurm - link_type: symlink + select: *Batchsystem_pckgs Compiler: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/Compiler - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - atlas - - clapack - - boost - - clhep - - eigen - - geant4 - - googletest - - gsl - - intel-oneapi-mpi - - kokkos - - libint - - libxc - - libxsmm - - mpich - - openblas - - openmpi - - root - - superlu - - vtk - link_type: symlink + select: *Compiler_pckgs Cuda: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/cuda - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - cuda - link_type: symlink + select: *Cuda_pckgs EM: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/EM - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - cistem - - ctffind - - motioncor2 - - relion - - unblur - link_type: symlink + select: *EM_pckgs HDF5: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/HDF5 - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - alps - - h5hut+mpi - - hdf5-blosc - - ioapi - - hdf5+mpi - - netcdf-c - - netcdf-fortran - - netcdf-c - - trilinos - link_type: symlink + select: *HDF5_pckgs HDF5_serial: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/HDF5_serial - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - hdf5~mpi - - h5hut~mpi - - ncview - link_type: symlink + select: *HDF5_serial_pckgs Librairies: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/Librairies - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - alsa-lib - - gdrcopy - - giflib - - gmp - - hwloc - - isl - - knem - - libtasn1 - - mpc - - mpfr - - nettle - - pmix - - ucx - - udunits - - wxwidgets - - x264 - - zlib - link_type: symlink + select: *Librairies_pckgs MPI: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/MPI - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - amrex - - boxlib - - cp2k - - cpmd - - elegant - - elpa - - fftw - - gromacs - - lammps - - astra - link_type: symlink + select: *MPI_pckgs MX: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/MX - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - cbflib - - lz4 - - openbabel - - visit - link_type: symlink + select: *MX_pckgs Programming: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/Programming - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - autoconf - - automake - - binutils - - bison - - cmake - - erlang - - gcc - - go - - intel - - openjdk - - julia - - libtool - - lua - - m4 - - nasm - - perl - - nvhpc+mpi - - python - - py-tensorflow - - qt - - r - - tcl - - tk - link_type: symlink + select: *Programming_pckgs System: + link: all + link_type: symlink + projections: *unified_projections root: /afs/psi.ch/sys/spack-rhel7/System - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - bash - - filebench - - ior - - mdtest - - nmap - - patchelf - - unison - link_type: symlink + select: *System_pckgs Tools: - root: /afs/psi.ch/sys/spack-rhel7/Tools - projections: - ^mpi: '{name}/{version}/{^mpi.name}/{^mpi.version}/{compiler.name}/{compiler.version}' - all: '{name}/{version}/{compiler.name}/{compiler.version}' - ~mpi: '{name}_serial/{version}/{compiler.name}/{compiler.version}' - threads=openmp: '{name}_OMP/{version}/{compiler.name}/{compiler.version}' - select: - - aria2 - - asciidoc - - coreutils - - emacs - - ffmpeg - - gaussian - - gettext - - git - - global - - gnupg - - gnuplot - - gnutls - - hdfview - - krb5 - - kubernetes - - namd - - ncview - - openjpeg - - openssl - - orca - - paraview - - texlive - - tmux - - uncrustify - - vim - - visit - - xmlto - - xz + link: all link_type: symlink + projections: *unified_projections + root: /afs/psi.ch/sys/spack-rhel7/Tools + select: *Tools_pckgs