New SPACK software stack on Euler
We are currently setting up a new software stack with the package manager SPACK on Euler using the LMOD module system. The new software stack will have 3 toolchains (GCC 4.8.5, GCC 6.3.0 and Intel 18.0.1). A toolchain is a set of applications and libraries that has been compiled with the same compiler.
You can find an overview on all packages that are available in the new software stack on our wiki. It is possible to switch back and forth between the current and the new software stack, but they cannot be mixed. For this you need to source a script.
Switching from the old to the new software stack:
source /cluster/apps/local/env2lmod.sh
Switching from the new to the old software stack:
source /cluster/apps/local/lmod2env.sh
Example:
Loading some modules in the old software stack:
[sfux@eu-login-16-ng ~]$ module load new gcc/4.8.2 open_mpi/1.6.5 openblas/0.2.8_seq [sfux@eu-login-16-ng ~]$ module list Currently Loaded Modulefiles: 1) modules 3) gcc/4.8.2(default:4.8) 5) openblas/0.2.8_seq(0.2.8) 2) new 4) open_mpi/1.6.5(1.6:default)
Switching to the new software stack and load some modules:
[sfux@eu-login-16-ng ~]$ source /cluster/apps/local/env2lmod.sh [sfux@eu-login-16-ng ~]$ module list Currently Loaded Modules: 1) StdEnv 2) gcc/4.8.5 [sfux@eu-login-16-ng ~]$ module load intel/18.0.1 openmpi/3.0.1 openblas/0.2.20 Lmod is automatically replacing "gcc/4.8.5" with "intel/18.0.1". [sfux@eu-login-16-ng ~]$ echo $MKLROOT /cluster/apps/intel/parallel_studio_xe_2018_r1/compilers_and_libraries_2018.1.163/linux/mkl
Switching back to the old software stack and loading again some modules:
[sfux@eu-login-16-ng ~]$ source /cluster/apps/local/lmod2env.sh [sfux@eu-login-16-ng ~]$ module list Currently Loaded Modulefiles: 1) modules [sfux@eu-login-16-ng ~]$ module load new gcc/4.8.2 open_mpi/1.6.5 openblas/0.2.8_seq [sfux@eu-login-16-ng ~]$ module list Currently Loaded Modulefiles: 1) modules 3) gcc/4.8.2(default:4.8) 5) openblas/0.2.8_seq(0.2.8) 2) new 4) open_mpi/1.6.5(1.6:default) [sfux@eu-login-16-ng ~]$
One change with regards to the module system is, that LMOD modules are organized in a hierarchy of modules.