ADD: new modules specific creation processes & rename Compilers to Compiler

This commit is contained in:
Germann Elsa Sylvia
2022-08-23 10:00:02 +02:00
parent f35b6fef3d
commit be9429a155

151
env/merlin/spack.yaml vendored
View File

@ -13,24 +13,21 @@ spack:
- '%gcc@12.1.0'
- Batchsystem_pckgs: &Batchsystem_pckgs
- slurm
- Compilers_pckgs: &Compilers_pckgs
- Compiler_pckgs: &Compiler_pckgs
- atlas
- boost
- clapack
- clhep
- cuda
- eigen
- geant4
- gsl
- googletest
- hdf5~mpi
- hdf5+mpi
- intel-oneapi-mpi
- kokkos
- libint tune=cp2k-lmax-6
- libxc
- libxsmm
- mpich
- nvhpc+mpi
- openblas threads=none
- openblas threads=openmp
- openmpi
@ -100,7 +97,6 @@ spack:
- erlang
- gcc
- go
- intel-oneapi-mpi
- intel
- openjdk
- julia
@ -174,25 +170,52 @@ spack:
- '{name}'
environment:
append_path:
# equivalent to module-addgroup Batchsystem
MODULEPATH: *Batchsystem_module_root
set:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
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}'
Compilers:
use_view: Compilers
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/Compilers
tcl: &MPI_module_root /afs/psi.ch/sys/spack-rhel7/MPI
tcl:
blacklist_implicits: true
include: *Compilers_pckgs
include: *MPI_pckgs
all:
autoload: direct
conflict:
- '{name}'
environment:
append_path:
MODULEPATH: *MPI_module_root
set:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{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
all:
autoload: direct
conflict:
@ -202,6 +225,49 @@ spack:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
intel-oneapi-mpi:
environment:
append_path:
# equivalent to module-addgroup MPI
MODULEPATH: *MPI_module_root
set:
MPIFC: 'mpiifort'
MPIFORTRAN: 'mpiifort'
MPIEXEC: 'mpiexec.hydra'
MPIRUN: 'mpirun'
I_MPI_ICC: 'mpiicc'
I_MPI_CXX: 'mpiicpc'
I_MPI_F77: 'mpiifort'
I_MPI_F90: 'mpiifort'
I_MPI_FC: 'mpiifort'
mpich:
environment:
append_path:
# equivalent to module-addgroup MPI
MODULEPATH: *MPI_module_root
set:
MPIFC: ${prefix}/bin/mpif90
MPIFORTRAN: ${prefix}/bin/mpif90
MPIEXEC: ${prefix}/bin/mpiexec
MPIRUN: ${prefix}/bin/mpirun
openblas:
environment:
set:
BLASLIB: ${prefix}/libopenblas.a
openmpi:
environment:
append_path:
# equivalent to module-addgroup MPI
MODULEPATH: *MPI_module_root
set:
MPIFC: ${prefix}/bin/mpif90
MPIFORTRAN: ${prefix}/bin/mpif90
MPIEXEC: ${prefix}/bin/mpiexec
MPIRUN: ${prefix}/bin/mpirun
root:
environment:
set:
ROOTSYS: ${prefix}
projections: *unified_modules_projections
Cuda:
use_view: Cuda
@ -219,11 +285,12 @@ spack:
- '{name}'
environment:
append_path:
# equivalent to module-addgroup cuda
MODULEPATH: *Cuda_module_root
set:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
${PACKAGE}_PATH: '{prefix}'
projections: *unified_modules_projections
EM:
use_view: EM
@ -264,11 +331,12 @@ spack:
- 'HDF5_serial'
environment:
append_path:
# equivalent to module-addgroup HDF5
MODULEPATH: *HDF5_module_root
set:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
${PACKAGE}_ROOT: '{prefix}'
projections: *unified_modules_projections
HDF5_serial:
use_view: HDF5_serial
@ -287,11 +355,12 @@ spack:
- 'HDF5_serial'
environment:
append_path:
# equivalent to module-addgroup HDF5_serial
MODULEPATH: *HDF5_serial_module_root
set:
${PACKAGE}_INCLUDE_DIR: '{prefix}/include'
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
${PACKAGE}_ROOT: '{prefix}'
projections: *unified_modules_projections
Librairies:
use_view: Librairies
@ -315,28 +384,6 @@ spack:
${PACKAGE}_LIBRARY_DIR: '{prefix}/lib'
${PACKAGE}_VERSION: '{version}'
projections: *unified_modules_projections
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
all:
autoload: direct
conflict:
- '{name}'
environment:
append_path:
MODULEPATH: *MPI_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
@ -454,8 +501,31 @@ spack:
#<<<
specs:
- matrix:
- - $Compilers_pckgs
- - $Batchsystem_pckgs
- - $compilers
exclude:
- slurm%oneapi
- matrix:
- - $Compiler_pckgs
- - $compilers
exclude:
- atlas%oneapi
- libxsmm%gcc
- clapack%oneapi
- clhep%oneapi
- cuda%oneapi
- eigen%oneapi
- geant4%oneapi
- googletest%oneapi
- kokkos%oneapi
- libint%gcc tune=cp2k-lmax-6
- libxc%gcc
- libxsm%gcc
- nvhpc%oneapi+mpi
- openblas threads=none
- openblas%oneapi threads=openmp
- root%oneapi
- superlu%oneapi
view:
Batchsystem:
link: roots
@ -464,14 +534,15 @@ spack:
^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: 'modulefiles/{compiler.name}/{compiler.version}/{name}_OMP/{version}'
root: /afs/psi.ch/sys/spack-rhel7/Batchsystem
select: *Batchsystem_pckgs
Compilers:
Compiler:
link: roots
link_type: symlink
projections: *unified_projections
root: /afs/psi.ch/sys/spack-rhel7/Compilers
select: *Compilers_pckgs
root: /afs/psi.ch/sys/spack-rhel7/Compiler
select: *Compiler_pckgs
Cuda:
link: roots
link_type: symlink