Skip to content

Examples

Environment modules

On MUSICA, Lmod is the tool used to manage environment modules. For more detailed info, please refer to the Lmod documentation

. The basic commands

should be quite familiar to users of other module tools:

  • Use module avail to find installations of a package.
  • Use module load to load the module.
  • Use module list to list all the loaded modules.
  • Use module purge to remove all the loaded modules.
  • Use module show to inspect the module.

Starting EESSI

EESSI is automatically initialised on login, at the moment this is set to load a specific release. If you ssh into a node that is configured to load EESSI automatically, you will likely be greeted with a line of text that contains info about what version is currently loaded. To load a specific version of easy, on e can do:

ml load EESSI/2023.06

If this succeeds, you should be able to see what EESSI releases can be loaded with module avail. For a more detailed introduction to how the environment is set up to run EESSI, please refer to the online documentation.

Warning

EESSI is loaded as a sticky module, module purge will not remove it from the environment. To remove it one needs to do module --force purge.

Getting an overview

The EESSI project itself consists of three layers. Each of the sections below highlights a few aspects of each layer, and how the ASC software stack is set up to follow a similar pattern. First, let's get an overview of the available modules, this can be achieved by typing ml ov. The output should look something like the following:

------------------------------------------------------------------------------------ System ------------------------------------------------------------------------------------
CUDA (4)   GnuTLS (2)   hwloc (2)   libdeflate (2)   libgcrypt (1)   libgpg-error (1)   libpciaccess (3)   OpenPGM (2)   OpenSSL (2)

--------------------------------------------------------------------------------- Mathematics ----------------------------------------------------------------------------------
ArviZ (1)   CoinUtils (2)   GMP   (2)   KaHIP   (1)   MathWorksServiceHost (1)   MPFR   (2)   ParMETIS   (1)   SCOTCH      (2)   sympy  (2)
Cbc   (2)   Eigen     (2)   gmpy2 (2)   libcerf (1)   MATLAB               (1)   MUMPS  (2)   pystencils (1)   Shapely     (1)   Voro++ (2)
Cgl   (2)   ELPA      (1)   gmsh  (1)   libxsmm (1)   METIS                (2)   Octave (1)   Qhull      (2)   statsmodels (2)
Clp   (2)   GEOS      (2)   ISL   (1)   magma   (1)   MPC                  (2)   Osi    (2)   ScaFaCoS   (2)   SUNDIALS    (1)

------------------------------------------------------------------------------------- CAE --------------------------------------------------------------------------------------
occt (1)   OpenFOAM (5)   STAR-CCM+ (1)   Zoltan (1)

------------------------------------------------------------------------------------ Tools -------------------------------------------------------------------------------------
ANSYS        (1)   Deprecated  (1)    git                   (2)   IPython          (2)   maturin      (3)   parallel             (1)   setuptools-rust (2)   wrapt      (2)
archspec     (3)   EasyBuild   (10)   GLPK                  (2)   ITSTool          (1)   meson-python (3)   patchelf             (2)   SlurmViewer     (1)   xxd        (2)
arrow-R      (1)   ecBuild     (1)    googletest            (2)   jedi             (2)   Meson        (4)   PDAL                 (1)   snakemake       (2)   xxHash     (1)
bokeh        (1)   ecCodes     (2)    groff                 (1)   jupyter-server   (1)   ml_dtypes    (1)   pigz                 (1)   Szip            (2)   yaml-cpp   (1)
ccache       (1)   elfx86exts  (1)    gtk-doc               (1)   JupyterLab       (1)   MLflow       (2)   poetry               (2)   tmux            (1)   yelp-tools (1)
cffi         (2)   Emacs       (1)    gzip                  (2)   JupyterNotebook  (1)   ncdu         (1)   pre-commit           (1)   toil-cwl        (1)   Z3         (3)
coverage     (1)   enchant-2   (1)    hatch-jupyter-builder (1)   libarchive       (3)   Neovim       (1)   PuLP                 (2)   TOML-Fortran    (2)   Zip        (1)
cpio         (1)   expat       (3)    hatchling             (2)   libavif          (1)   networkx     (2)   py-cpuinfo           (1)   umap-learn      (1)
cppy         (2)   expecttest  (1)    hiredis               (1)   libde265         (2)   Nextflow     (2)   pytest-flakefinder   (1)   unifdef         (1)
cryptography (2)   flit        (2)    HPL                   (1)   libheif          (2)   Ninja        (3)   pytest-rerunfailures (1)   UnZip           (3)
cURL         (3)   gawk        (1)    hunspell              (1)   lit              (2)   numactl      (2)   pytest-shard         (1)   Vim             (1)
cwltool      (1)   gengetopt   (1)    hypothesis            (2)   LRBinner         (1)   p7zip        (1)   re2c                 (2)   virtualenv      (2)
DB           (1)   Ghostscript (2)    ipympl                (1)   mallard-ducktype (1)   Pandoc       (1)   rpy2                 (1)   websockify      (1)

----------------------------------------------------------------------------------- Numerics -----------------------------------------------------------------------------------
AOCL-BLAS (1)   arpack-ng  (2)   BLIS (2)   cuDNN    (1)   FFTW   (3)   GSL   (2)   imkl  (1)   OpenBLAS (2)   Pint     (2)   ScaLAPACK (2)   SuiteSparse  (2)
Armadillo (2)   beagle-lib (1)   CGAL (1)   FFTW.MPI (2)   Ginkgo (1)   Hypre (2)   NLopt (2)   PETSc    (2)   qrupdate (1)   SLEPc     (1)   SuperLU_DIST (2)

----------------------------------------------------------------------------------- Compiler -----------------------------------------------------------------------------------
Go (1)   LLVM (4)   nvidia-compilers (2)

---------------------------------------------------------------------------------- Toolchain -----------------------------------------------------------------------------------
foss (3)   gfbf (3)   gomkl (1)   gompi (3)   NVHPC (2)
...

Note

Software (N) is the number of software installations present

EESSI project install

In order to test out a toolchain before making it globally available, the software team at ASC will often do a test installation and try to weed out bugs.

First we define the location for the testing stack

export EESSI_PROJECT_INSTALL=/opt/adm/asc-software-stack/alice

Then we load clear the module environment and load a recent version of EasyBuild

ml --force-purge && ml load ASC/2025.06
ml load EESSI-extend

Search for the toolchain we want

eb --search intel-2025

Build toolchain, skipping the sanity checks (we know these fail, we want to take a closer look at why).

eb -r --accept-eula-for=Intel --skip-sanity-check intel-2025a.eb

After successful compilation, we can then view the newly installed module with:

> ml avail intel

----------------------------------------------------------- /opt/adm/asc-software-stack/alice/versions/2025.06/software/linux/x86_64/amd/zen4/modules/all ------------------------------------------------------------
   impi/2021.15.0-intel-compilers-2025.1.1    intel-compilers/2025.1.1    intel/2025a