Environment Modules

There are several conflicting software packages installed in the OBLIVION supercomputer. In order for the user to use the adequate software there is a need to set the paths for the binaries, libraries, manuals, and includes. Either the user sets these paths for each package or the system provides an easy way to set those paths. The latter is the preferable and makes use of environment modules.

1. Toolchains

1.1 Definitions

Toolchain is a pack of compiler(s) and libraries bundled together to provide a specific functionality, say, running applications using a MPI distribution compiled against GCC (toolchain gompi) or Intel compilers (toolchain iimpi) or use linear algebra libraries with a MPI API compiled with GCC (toolchain foss).

Toolchain foss includes the following software:

  • C, C++ and Fortran compilers: GCC

  • MPI implementation: OpenMPI

  • OpenBLAS and LAPACK implementation: FlexiBLAS

  • Parallel, distributed LAPACK implementation: ScaLAPACK

  • Fourier transforms: FFTW

Toolchain intel includes the following software:

  • C, C++ and Fortran compilers (icc/icpc/ifort)

  • GCC as a base for the Intel compilers

  • MPI implementation (Intel MPI)

  • BLAS, LAPACK and FFTW: Intel MKL

Sub-toolchains:

  • gompi (GCC + OpenMPI)

  • iompi (Intel compilers + OpenMPI)

  • iimpi (Intel compilers + Intel MPI (MPICH))

  • imkl (Intel Math Kernel Library)

1.2 Toolchains and Sub-toolchains installed in OBLIVION

Toolchains:

  • foss: 2023a, 2024a, 2025a;

  • intel: 2023a, 2024a, 2025a.

Sub-toolchains:

  • gompi: 2023a, 2024a, 2025a, 2025b

  • iimpi: 2023a, 2024a, 2025a, 2025b

  • iompi: 2023a, 2024a, 2025a, 2025b

  • intel-compilers: 2023.1.0, 2024.2.0, 2025.1.1, 2025.15.0

  • imkl: 2023.1.0, 2023.2.0, 2024.2.0, 2025.1.0

2. Core Modules

The user sets the software environment by loading the modules associated to the needed packages. This is easily done by using module load or module add. Software dependences are set in the same way. OBLIVION uses a hierarchical module naming scheme (HMNS) in which modules availability follows the software hierarchy Core/Compiler/MPI.

Core refers to the basic core modules that have to be loaded in order to have access to next levels of software compiled against a specific compiler (e.g., GCC 12.3.0, 13.3.0, or 14.2.0; intel-compilers 2023.1.0, 2024.2.0 or 2025.1.1) and a MPI API (e.g., OpenMPI 4.1.5, 5.0.3, 5.0.7; MPICH 4.2.1, 4.2.2; Intel MPI 2021.9.0, 2021.13.0, or 2021.15.0 - the latter were compiled with intel-compilers 2023.1.0, 2024.2.0, 2025.1.1, respectively). It also includes modules of software that i) are initially compiled with the system/machine compiler (e.g., binutils, gettext, M4, ncurses, pkgconf, zlib), and ii) are not being built but instead are directly installed into the stack (e.g., Anaconda, ANSYS_CFD).

After logging into the machine the user should execute the command module --nx av (av for available software, –nx to prevent the display of the extensions list) obtaining the list of core modules (including the toolchains and sub-toolchains):

The list displays the toolchains (foss and intel) and the sub-toolchains (GCC, gompi, iompi, intel-compilers, iimpi, and imkl) availables to the users. It also displays software that do not belong to these categories and is available in the system, e.g., ANACONDA, JAVA, Julia, etc..

3. Loading Modules

3.1 GCC Based Modules

Let us assume that the user wants to use software compiled with GCC-13.3.0 he must load the corresponding modules

module load GCC/13.3.0

To learn the loaded modules use

module list

obtaining

Currently Loaded Modules:
   1) GCCcore/13.3.0   2) zlib/1.3.1   3) binutils/2.42   4) GCC/13.3.0

Loading the module GCC/13.3.0 gives access to other modules that only now became available. To see those modules use “module –nx av” obtaining

--------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCC/13.3.0 ---------------------------------
   ASE/3.23.0                       GEOS/3.12.2                    Simple-DFTD3/1.2.1    mrcfile/1.5.4
   ASE/3.24.0                       GSL/2.8                        TOML-Fortran/0.4.2    mstore/0.3.0
   ASE/3.25.0                (D)    HTSlib/1.21                    bokeh/3.6.0           multiprocess/0.70.17
   Arrow/17.0.0                     MAFFT/7.526-with-extensions    btllib/1.7.5          networkx/3.4.2
   BBMap/39.19                      MPICH/4.2.2                    dask/2024.9.1         pybind11/2.12.0
   BCFtools/1.21                    OpenBLAS/0.3.27                flook/0.8.4           scikit-learn/1.5.2
   BEDTools/2.31.1                  OpenMPI/5.0.3                  imageio/2.36.1        spglib-python/2.5.0
   BLIS/1.0                         Osi/0.108.11                   json-fortran/9.0.3    statsmodels/0.14.4
   BamTools/2.5.2                   PyTensor/2.30.3                kim-api/2.4.1         sympy/1.13.3
   Boost.Python-NumPy/1.85.0        Pysam/0.22.1                   libPSML/2.1.0         tensorboard/2.18.0
   Boost.Python/1.85.0              R/4.4.2                        libcint/6.1.2         test-drive/0.5.0
   Boost/1.85.0                     SAMtools/1.21                  libfdf/0.5.1          wrapt/1.16.0
   CoinUtils/2.11.12                SOCI/4.0.3                     libxc/6.2.2           xarray/2024.11.0
   DIAMOND/2.1.11                   SPAdes/4.1.0                   lpsolve/5.5.2.11      xmlf90/1.6.3
   Exonerate/2.4.0                  SciPy-bundle/2024.05           matplotlib/3.9.2
   FFTW/3.3.10                      Seaborn/0.13.2                 mctc-lib/0.3.1
   FlexiBLAS/3.4.4                  Shapely/2.0.6                  ml_dtypes/0.5.0

------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCCcore/13.3.0 -------------------------------
   ANTLR/2.7.7                         Python-bundle-PyPI/2024.06           libepoxy/1.5.10
   ATK/2.38.0                          Python/3.12.3                        libevent/2.1.12
   Abseil/20240722.0                   Qhull/2020.2                         libfabric/1.21.0
   Autoconf/2.72                (D)    Qt5/5.15.16                          libffi/3.4.5
   Automake/1.16.5                     Qt6/6.7.2                            libgd/2.3.3
   Autotools/20231222                  RE2/2024-07-02                       libgeotiff/1.7.3
   BWA/0.7.18                          RapidJSON/1.1.0-20240815             libgit2/1.8.1
   Bazel/6.5.0-Java-11                 Redis/7.4.1                          libglvnd/1.7.0
   BeautifulSoup/4.12.3                Rust/1.78.0                          libheif/1.19.5
   Bison/3.8.2                  (D)    SDL2/2.30.6                          libiconv/1.17
   Blosc/1.21.6                        SIONlib/1.7.7-tools                  libidn2/2.3.8
   Blosc2/2.17.0                       SIP/6.10.0                           libjpeg-turbo/3.0.1
   Brotli/1.1.0                        SQLAlchemy/2.0.36                    libogg/1.3.5
   Brunsli/0.1                         SQLite/3.45.3                        libopus/1.5.2
   CFITSIO/4.4.1                       SWIG/4.2.1                           libpciaccess/0.18.1
   CGAL/5.6.1                          Szip/2.1.1                           libpng/1.6.43
   CMake/3.29.3                        Tcl/8.6.14                           libreadline/8.2
   ...

---------------------------------------- /mnt/beegfs/apps/modules/all/Core -----------------------------------------
   Anaconda3/2025.06-1                  OpenSSL/3           (D)    iimkl/2025a              (D)
   Autoconf/2.71                        Perl/5.38.0                iimpi/2023a
   Bison/3.8.2                          ant/1.10.12-Java-17        iimpi/2024a
   FastQC/0.11.9-Java-11                ant/1.10.14-Java-11 (D)    iimpi/2025a              (D)
   GCC/12.3.0                           binutils/2.40              imkl/2023.1.0
   GCC/13.3.0                 (L)       binutils/2.42              imkl/2023.2.0
   GCC/14.2.0                 (D)       ecBuild/3.8.0              imkl/2024.2.0
   GCCcore/12.3.0                       ffnvcodec/12.0.16.0        imkl/2025.1.0            (D)
   GCCcore/13.3.0             (L)       ffnvcodec/12.1.14.0        intel-compilers/2023.1.0
   GCCcore/14.2.0             (D)       ffnvcodec/12.2.72.0 (D)    intel-compilers/2024.2.0
   GPAW-setups/24.1.0                   flex/2.6.4                 intel-compilers/2025.1.1 (D)
   GPAW-setups/24.11.0        (D)       foss/2023a                 intel/2023a
   IJulia/1.29.0-Julia-1.11.6           foss/2024a                 intel/2024a
   Java/11.0.27               (11)      foss/2025a          (D)    intel/2025a              (D)
   Java/17.0.15               (D:17)    gettext/0.21.1             iompi/2023a
   ...

Where:
 L:        Module is loaded
 D:        Default Module

Here one can see (from bottom to top) the list of sytem Core modules indicating those loaded with (L), followed by the general software compiled with GCC-13.3.0 becoming the core software (GCCcore) against which all the packages are compiled, and, the software compiled using the GCCcore software, e.g., MPICH and OpenMPI-5.0.3. Note that GCC-13.3.0 is the base compilers collection for 2024a toolchains.

To have access to software compiled with OpenMPI-5.0.3, the user needs to use module load OpenMPI/5.0.3. The list of packages loaded is now given by module list:

Currently Loaded Modules:
   1) GCCcore/13.3.0   6) XZ/5.4.5             11) libevent/2.1.12   16) UCC/1.3.0
   2) zlib/1.3.1       7) libxml2/2.12.7       12) UCX/1.16.0        17) OpenMPI/5.0.3
   3) binutils/2.42    8) libpciaccess/0.18.1  13) libfabric/1.21.0
   4) GCC/13.3.0       9) hwloc/2.10.0         14) PMIx/5.0.2
   5) numactl/2.0.18  10) OpenSSL/3            15) PRRTE/3.0.5

Now, not only OpenMPI is loaded, but also UCX, PMIx, etc., are loaded. UCX stands for Unified Communication X and is “an optimized production communication framework for modern, high-bandwidth and low-latency networks” (see https://github.com/openucx/ucx) meaning for infiniband. PMIx stands for Process Management Interface - Exascale and enables the interaction of MPI applications with Resource Managers like SLURM (see https://pmix.github.io)

Let us now change the enviromment to one using GCC-14.2.0. Hence, load the module GCC/14.2.0 (use module load GCC/14.2.0) and immediately it is seen

Inactive Modules:
  1) OpenMPI/5.0.3     3) PRRTE/3.0.5     5) hwloc/2.10.0         7) libxml2/2.12.7
  2) PMIx/5.0.2        4) XZ/5.4.5        6) libfabric/1.21.0

Due to MODULEPATH changes, the following have been reloaded:
  1) UCC/1.3.0     2) binutils/2.42     3) libevent/2.1.12     4) libpciaccess/0.18.1     5) zlib/1.3.1

The following have been reloaded with a version change:
  1) GCC/13.3.0 => GCC/14.2.0             3) UCX/1.16.0 => UCX/1.18.0
  2) GCCcore/13.3.0 => GCCcore/14.2.0     4) numactl/2.0.18 => numactl/2.0.19

So, what happen? Basically the system is smart enough to understand that the dependences and core files in the previous environment are incompatible with GCC/14.2.0 and replaces or deactivates modules. Check the loaded modules with module list

Currently Loaded Modules:
  1) GCCcore/14.2.0   3) GCC/14.2.0   5) libpciaccess/0.18.1   7) libevent/2.1.12   9) UCX/1.18.0
  2) binutils/2.42    4) zlib/1.3.1   6) OpenSSL/3             8) numactl/2.0.19   10) UCC/1.3.0

Inactive Modules:
  1) XZ/5.4.5         3) hwloc/2.10.0       5) PMIx/5.0.2    7) OpenMPI/5.0.3
  2) libxml2/2.12.7   4) libfabric/1.21.0   6) PRRTE/3.0.5

No longer have access to OpenMPI-5.0.3 and associated frameworks. Let’s check what is available (use module --nx av)

------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCC/14.2.0 --------------------------------
   AOCL-BLAS/5.0                    FlexiBLAS/3.4.5         Seaborn/0.13.2       networkx/3.5
   ASE/3.25.0                       GEOS/3.13.1             Shapely/2.1.1        pybind11/2.13.6
   ASE/3.26.0                (D)    GSL/2.8                 bokeh/3.7.3          scikit-learn/1.7.0
   BLIS/1.1                         OpenBLAS/0.3.29         dask/2025.5.1        spglib-python/2.6.0
   Boost.Python-NumPy/1.88.0        OpenMPI/5.0.7           libxc/7.0.0
   Boost/1.88.0                     SAMtools/1.22.1         matplotlib/3.10.3
   FFTW/3.3.10                      SciPy-bundle/2025.06    mrcfile/1.5.4

----------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCCcore/14.2.0 ------------------------------
   Abseil/20250512.1                   PyZMQ/27.0.0                         libdeflate/1.24
   Autoconf/2.72                (D)    Python-bundle-PyPI/2025.04           libevent/2.1.12          (L)
   Automake/1.17                       Python/3.13.1                        libfabric/2.0.0
   Autotools/20240712                  Qhull/2020.2                         libffi/3.4.5
   BeautifulSoup/4.13.4                Redis/8.0.2                          libgeotiff/1.7.4
   Bison/3.8.2                  (D)    Rust/1.85.1                          libheif/1.19.8
   Blosc/1.21.6                        SIONlib/1.7.7-tools                  libiconv/1.18
   Blosc2/2.19.0                       SQLite/3.47.2                        libidn2/2.3.7
   Brotli/1.1.0                        SWIG/4.3.1                           libjpeg-turbo/3.1.0
   Brunsli/0.1                         Szip/2.1.1                           libpciaccess/0.18.1      (L)
   CFITSIO/4.6.2                       Tcl/8.6.16                           libpng/1.6.48
   CMake/3.31.3                        Tk/8.6.16                            libpsl/0.21.5
   Catch2/2.13.10                      Tkinter/3.13.1                       libreadline/8.2
   Catch2/3.8.1                 (D)    UCC/1.3.0                   (L)      libsodium/1.0.20
   Check/0.15.2                        UCX/1.18.0                  (L)      libtirpc/1.3.6
   ...
   Perl-bundle-CPAN/5.40.0             json-c/0.18                          xorg-macros/1.20.2
   Perl/5.40.0                  (D)    jupyter-server/2.16.0                xxd/9.1.1457
   Pillow/11.3.0                       libaec/1.1.4                         zlib/1.3.1               (L,D)
   Pint/0.24.4                         libarchive/3.7.7                     zstd/1.5.6
   PyYAML/6.0.2                        libde265/1.0.16

--------------------------------------- /mnt/beegfs/apps/modules/all/Core ---------------------------------------
   Anaconda3/2025.06-1                  OpenSSL/3           (L,D)    iimkl/2025a              (D)
   Autoconf/2.71                        Perl/5.38.0                  iimpi/2023a
   Bison/3.8.2                          ant/1.10.12-Java-17          iimpi/2024a
   FastQC/0.11.9-Java-11                ant/1.10.14-Java-11 (D)      iimpi/2025a              (D)
   GCC/12.3.0                           binutils/2.40                imkl/2023.1.0
   GCC/13.3.0                           binutils/2.42                imkl/2023.2.0
   GCC/14.2.0                 (L,D)     ecBuild/3.8.0                imkl/2024.2.0
   GCCcore/12.3.0                       ffnvcodec/12.0.16.0          imkl/2025.1.0            (D)
   ...

 Where:
   L:        Module is loaded
   D:        Default Module

Again, besides the core modules, there is a huge list of packages compiled with GCC-14.2.0 including OpenMPI-5.0.7, OpenBLAS, LAPACK, etc.. Load OpenMPI/5.0.7 (module load OpenMPI/5.0.7) obtaining

Activating Modules:
   1) OpenMPI/5.0.7     3) PRRTE/3.0.8     5) hwloc/2.11.2        7) libxml2/2.13.4
   2) PMIx/5.0.6        4) XZ/5.6.3        6) libfabric/2.0.0

and list the loaded modules (module list)

Currently Loaded Modules:
   1) GCCcore/14.2.0        6) OpenSSL/3        11) XZ/5.6.3         16) PRRTE/3.0.8
   2) binutils/2.42         7) libevent/2.1.12  12) libxml2/2.13.4   17) OpenMPI/5.0.7
   3) GCC/14.2.0            8) numactl/2.0.19   13) hwloc/2.11.2
   4) zlib/1.3.1            9) UCX/1.18.0       14) libfabric/2.0.0
   5) libpciaccess/0.18.1  10) UCC/1.3.0        15) PMIx/5.0.6

and see what is available (module --nx av)

------------------ /mnt/beegfs/apps/modules/all/MPI/GCC/14.2.0/OpenMPI/5.0.7 -------------------
   Armadillo/14.6.0              OSU-Micro-Benchmarks/7.5              Wannier90/3.1.0
   Biopython/1.85                OpenMM/8.3.0                          arpack-ng/3.9.1
   CDO/2.5.2                     PETSc/3.23.5                          buildenv/default
   Cartopy/0.24.1                PLUMED/2.9.4                          dtcmp/1.1.5
   DIRAC/25.0                    ParMETIS/4.0.3                        ecCodes/2.43.0
   ELPA/2025.01.002              PnetCDF/1.14.0                        h5py/3.14.0
   FFTW.MPI/3.3.10               PyStan/3.10.0                         ipyparallel/9.0.1
   Fiona/1.10.1                  PyTables/3.10.2                       libcircle/0.3
   GDAL/3.11.1                   RDKit/2025.03.4                       libvdwxc/0.5.0
   GPAW/25.7.0-ASE-3.26.0        Ray-project/2.47.1                    lwgrp/1.0.6
   GPAW/25.7.0            (D)    SCOTCH/7.0.8                          mpi4py/4.1.0
   GROMACS/2025.2                ScaLAPACK/2.2.2-fb                    mpifileutils/0.12
   HDF5/1.14.6                   Scalasca/2.6.2                        netCDF-Fortran/4.6.2
   HPCG/3.1                      Score-P/9.0                           netCDF/4.9.3
   HPL/2.3                       Score-P/9.2                    (D)    netcdf4-python/1.7.2
   Hypre/2.33.0                  SuiteSparse/7.10.3-METIS-5.1.0        nglview/3.1.4
   MDAnalysis/2.9.0              SuiteSparse/7.10.3             (D)    zarr/3.0.10
   MDTraj/1.11.0                 SuperLU_DIST/9.1.0
   MUMPS/5.8.1-metis             Valgrind/3.25.0

----------------------- /mnt/beegfs/apps/modules/all/Compiler/GCC/14.2.0 -----------------------
   AOCL-BLAS/5.0                    GSL/2.8                     libxc/7.0.0
   ASE/3.25.0                       OpenBLAS/0.3.29             matplotlib/3.10.3
   ASE/3.26.0                (D)    OpenMPI/5.0.7        (L)    mrcfile/1.5.4
   BLIS/1.1                         SAMtools/1.22.1             networkx/3.5
   Boost.Python-NumPy/1.88.0        SciPy-bundle/2025.06        pybind11/2.13.6
   Boost/1.88.0                     Seaborn/0.13.2              scikit-learn/1.7.0
   FFTW/3.3.10                      Shapely/2.1.1               spglib-python/2.6.0
   FlexiBLAS/3.4.5                  bokeh/3.7.3
   GEOS/3.13.1                      dask/2025.5.1

The user got access to a new level the software hierarchy. Hence, having access to all the software that was compiled against OpenMPI-5.0.7 (top row), which in turn was compiled with GCC-14.2.0 (as displayed in the second row of modules - from top to bottom).

3.2 Foss/2025a Toolchain

Accessing the software modules made available by loading GCC/14.2.0 and OpenMPI/5.0.3 can be done by just loading foss/2025a with the penalty of loading extra modules like BLIS, FFTW, FlexiBLAS, OpenBLAS, ScaLAPACK. let’s check it. Start with module purge followed by module load foss/2025a and module list obtaining

Currently Loaded Modules:
   1) GCCcore/14.2.0   7) libxml2/2.13.4       13) libfabric/2.0.0  19) FlexiBLAS/3.4.5
   2) zlib/1.3.1       8) libpciaccess/0.18.1  14) PMIx/5.0.6       20) FFTW/3.3.10
   3) binutils/2.42    9) hwloc/2.11.2         15) PRRTE/3.0.8      21) FFTW.MPI/3.3.10
   4) GCC/14.2.0      10) OpenSSL/3            16) UCC/1.3.0        22) ScaLAPACK/2.2.2-fb
   5) numactl/2.0.19  11) libevent/2.1.12      17) OpenMPI/5.0.7    23) foss/2025a
   6) XZ/5.6.3        12) UCX/1.18.0           18) OpenBLAS/0.3.29

The available modules are (use module --nx av)

-------------------------- /mnt/beegfs/apps/modules/all/MPI/GCC/14.2.0/OpenMPI/5.0.7 ---------------------------
   Armadillo/14.6.0              OSU-Micro-Benchmarks/7.5              Wannier90/3.1.0
   Biopython/1.85                OpenMM/8.3.0                          arpack-ng/3.9.1
   CDO/2.5.2                     PETSc/3.23.5                          buildenv/default
   Cartopy/0.24.1                PLUMED/2.9.4                          dtcmp/1.1.5
   DIRAC/25.0                    ParMETIS/4.0.3                        ecCodes/2.43.0
   ELPA/2025.01.002              PnetCDF/1.14.0                        h5py/3.14.0
   FFTW.MPI/3.3.10        (L)    PyStan/3.10.0                         ipyparallel/9.0.1
   Fiona/1.10.1                  PyTables/3.10.2                       libcircle/0.3
   ...
------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCC/14.2.0 -------------------------------
   AOCL-BLAS/5.0                    FlexiBLAS/3.4.5      (L)    Seaborn/0.13.2       networkx/3.5
   ASE/3.25.0                       GEOS/3.13.1                 Shapely/2.1.1        pybind11/2.13.6
   ASE/3.26.0                (D)    GSL/2.8                     bokeh/3.7.3          scikit-learn/1.7.0
   BLIS/1.1                         OpenBLAS/0.3.29      (L)    dask/2025.5.1        spglib-python/2.6.0
   Boost.Python-NumPy/1.88.0        OpenMPI/5.0.7        (L)    libxc/7.0.0
   Boost/1.88.0                     SAMtools/1.22.1             matplotlib/3.10.3
   FFTW/3.3.10               (L)    SciPy-bundle/2025.06        mrcfile/1.5.4
   ...

It is the same obtained previously by loading GCC/14.2.0 and OpenMPI/5.0.7.

3.2 Foss/2024a and 2023a Toolchains

The foss/2024a and 2023a toolchains have the same software but with different versions being the latest versions (as off September 2025) in foss/2024a and foss/2025a. The latter toolchain includes only a subgroup of the software in foss/2024a and foss/2023a toolchains.

Let us explore the foss/2024a toolchain.

Start with module purge followed with module load foss/2024a and module --nx av obtaining

  ------------------------------- /mnt/beegfs/apps/modules/all/MPI/GCC/13.3.0/OpenMPI/5.0.3 -------------------------------
     ABySS/2.3.10                           MDTraj/1.10.3                               YAXT/0.11.3
     AUGUSTUS/3.5.0                         MMseqs2/17-b804f                            YaHS/1.2.2
     Armadillo/14.0.3                       MUMPS/5.7.2-metis                           arpack-ng/3.9.1
     ArviZ/0.21.0                           MultiQC/1.28                                arrow-R/17.0.0.1-R-4.4.2
     BLAST+/2.16.0                          NAMD/3.0-mpi                                bayesian-optimization/2.0.3
     Biopython/1.84                         NCO/5.2.9                                   bcbio-gff/0.7.1
     Boost.MPI/1.85.0                       ORCA/6.0.1-avx2                             biom-format/2.1.16
     CDO/2.4.4                              ORCA/6.0.1                           (D)    buildenv/default
     CMSeq/1.0.4                            OSU-Micro-Benchmarks/7.4                    clisops/0.15.0
     Cartopy/0.24.1                         OpenFOAM/v2406                              cnvpytor/1.3.1
     Cbc/2.10.12                            OpenMM/8.3.0                                cp2k-input-tools/0.9.1
     Cgl/0.60.8                             Optuna/4.1.0                                dtcmp/1.1.5
     Clp/1.17.10                            PETSc/3.23.5                                ecCodes/2.38.3
     CodingQuarry/2.0                       PLUMED/2.9.3                                geopandas/1.0.1
     Critic2/1.2                            ParMETIS/4.0.3                              h5glance/0.9.0
     CrystFEL/0.11.1                        ParaView/5.13.2                             h5netcdf/1.6.1
     DIRAC/24.0                             PnetCDF/1.14.0                              h5py/3.12.1
     ELPA/2024.05.001                       PuLP/2.8.0                                  kallisto/0.51.1
     EMD/0.8.1                              PyMC/5.22.0                                 koopmans-kcp/0.2.0
     ESMF/8.7.0                             PyStan/3.10.0                               koopmans-qe-utils/0.1.0
     ESPResSo/4.2.2                         PyTables/3.10.2                             koopmans/1.1.0
     ETE/3.1.3                              PyVista/0.44.2                              libGridXC/2.0.2
     Extrae/4.2.5                           PyWavelets/1.8.0                            libcircle/0.3
     FFTW.MPI/3.3.10                 (L)    QuantumESPRESSO/7.4-minimal                 libvdwxc/0.4.0
     Fiona/1.10.1                           QuantumESPRESSO/7.4                  (D)    lwgrp/1.0.6
     GDAL/3.10.0                            R-bundle-Bioconductor/3.20-R-4.4.2          maeparser/1.3.1
     GOATOOLS/1.4.12                        R-bundle-CRAN/2024.11                       modin/0.32.0
     GPAW/24.6.0                            RDKit/2025.03.3                             mpi4py/4.0.1
     GPAW/25.1.0-ASE-3.24.0                 RStudio-Server/2024.12.0+467-R-4.4.2        mpifileutils/0.11.1
     GPAW/25.1.0-ASE-3.25.0          (D)    Ray-project/2.37.0                          ncbi-vdb/3.2.0
     HDF5/1.14.5                            Rmath/4.4.2                                 ncview/2.1.11
     HISAT2/2.2.1                           SCOTCH/7.0.6                                netCDF-C++4/4.3.1
     HMMER/3.4                              SRA-Toolkit/3.2.0                           netCDF-Fortran/4.6.1
     HPCG/3.1                               SUNDIALS/7.0.0                              netCDF/4.9.2
     HPL/2.3                                ScaFaCoS/1.0.4                              netcdf4-python/1.7.1.post2
     HPX/1.10.0                             ScaLAPACK/2.2.0-fb                   (L)    nf-core/2.14.1
     HeFFTe/2.4.1                           Score-P/8.4                                 nglview/3.1.4
     Hybpiper/2.3.2                         Siesta/5.4.0                                numba/0.60.0
     Hypre/2.32.0                           SuiteSparse/7.8.2-METIS-5.1.0               pathos/0.3.3
     IMB/2021.6                             SuiteSparse/7.10.1                   (D)    s3fs/2024.9.0
     Infernal/1.1.5                         SuperLU_DIST/9.1.0                          scikit-image/0.25.0
     JAGS/4.3.2                             TINKER/25.3                                 sisl/0.15.2
     KaHIP/3.16                             VASP/6.5.0                                  snakemake/8.27.0
     Kraken2/2.1.4                          VASP/6.5.1                           (D)    tRNAscan-SE/2.0.12
     KrakenTools/1.2                        VTK/9.3.1                                   xclim/0.55.1
     LAMMPS/29Aug2024_update2-kokkos        Valgrind/3.24.0                             zarr/2.18.4
     MDAnalysis/2.9.0                       Wannier90/3.1.0
     MDI/1.4.26                             XCrySDen/1.6.2

 ----------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCC/13.3.0 ------------------------------------
    ASE/3.23.0                       GEOS/3.12.2                        Simple-DFTD3/1.2.1    mrcfile/1.5.4
    ASE/3.24.0                       GSL/2.8                            TOML-Fortran/0.4.2    mstore/0.3.0
    ASE/3.25.0                (D)    HTSlib/1.21                        bokeh/3.6.0           multiprocess/0.70.17
    Arrow/17.0.0                     MAFFT/7.526-with-extensions        btllib/1.7.5          networkx/3.4.2
    BBMap/39.19                      MPICH/4.2.2                        dask/2024.9.1         pybind11/2.12.0
    BCFtools/1.21                    OpenBLAS/0.3.27             (L)    flook/0.8.4           scikit-learn/1.5.2
    BEDTools/2.31.1                  OpenMPI/5.0.3               (L)    imageio/2.36.1        spglib-python/2.5.0
    BLIS/1.0                         Osi/0.108.11                       json-fortran/9.0.3    statsmodels/0.14.4
    BamTools/2.5.2                   PyTensor/2.30.3                    kim-api/2.4.1         sympy/1.13.3
    Boost.Python-NumPy/1.85.0        Pysam/0.22.1                       libPSML/2.1.0         tensorboard/2.18.0
    Boost.Python/1.85.0              R/4.4.2                            libcint/6.1.2         test-drive/0.5.0
    Boost/1.85.0                     SAMtools/1.21                      libfdf/0.5.1          wrapt/1.16.0
    CoinUtils/2.11.12                SOCI/4.0.3                         libxc/6.2.2           xarray/2024.11.0
    DIAMOND/2.1.11                   SPAdes/4.1.0                       lpsolve/5.5.2.11      xmlf90/1.6.3
    Exonerate/2.4.0                  SciPy-bundle/2024.05               matplotlib/3.9.2
    FFTW/3.3.10               (L)    Seaborn/0.13.2                     mctc-lib/0.3.1
    FlexiBLAS/3.4.4           (L)    Shapely/2.0.6                      ml_dtypes/0.5.0

--------------------------------- /mnt/beegfs/apps/modules/all/Compiler/GCCcore/13.3.0 ----------------------------------
   ANTLR/2.7.7                         Python-bundle-PyPI/2024.06           libepoxy/1.5.10
   ATK/2.38.0                          Python/3.12.3                        libevent/2.1.12              (L)
   Abseil/20240722.0                   Qhull/2020.2                         libfabric/1.21.0             (L)
   Autoconf/2.72                (D)    Qt5/5.15.16                          libffi/3.4.5
   Automake/1.16.5                     Qt6/6.7.2                            libgd/2.3.3
   Autotools/20231222                  RE2/2024-07-02                       libgeotiff/1.7.3
   BWA/0.7.18                          RapidJSON/1.1.0-20240815             libgit2/1.8.1
  ...

Most of the software, as can be seen in the top and middle rows, are similar to that available in foss/2023a and foss/2025a, but was compiled with a different version of GCC (13.3.0) and OpenMPI (5.0.3). Thel ist of packages includes well known and established software used by the quantum chemistry and material sciences communities, e.g., DIRAC, ELPA, Orca, Scafacos, VASP, QuantumEspresso, etc., and computational fluid dynamics (CFD), e.g., OpenFoam).

As an exercise lets load DIRAC using the command module load DIRAC/24.0 or just module load DIRAC followed with module list obtaining

Currently Loaded Modules:
  1) GCCcore/13.3.0       11) libevent/2.1.12   21) FFTW.MPI/3.3.10     31) Szip/2.1.1
  2) zlib/1.3.1           12) UCX/1.16.0        22) ScaLAPACK/2.2.0-fb  32) HDF5/1.14.5
  3) binutils/2.42        13) libfabric/1.21.0  23) foss/2024a          33) cffi/1.16.0
  4) GCC/13.3.0           14) PMIx/5.0.2        24) bzip2/1.0.8         34) cryptography/42.0.8
  5) numactl/2.0.18       15) PRRTE/3.0.5       25) ncurses/6.5         35) virtualenv/20.26.2
  6) XZ/5.4.5             16) UCC/1.3.0         26) libreadline/8.2     36) Python-bundle-PyPI/2024.06
  7) libxml2/2.12.7       17) OpenMPI/5.0.3     27) Tcl/8.6.14          37) SciPy-bundle/2024.05
  8) libpciaccess/0.18.1  18) OpenBLAS/0.3.27   28) SQLite/3.45.3       38) mpi4py/4.0.1
  9) hwloc/2.10.0         19) FlexiBLAS/3.4.4   29) libffi/3.4.5        39) h5py/3.12.1
 10) OpenSSL/3            20) FFTW/3.3.10       30) Python/3.12.3       40) DIRAC/24.0

So, we see dependences listed plus DIRAC/24.0. Lets check which DIRAC versions are installed in the software stack: module spider DIRAC

---------------------------------------------------------------------------------------------------------------------
  DIRAC:
---------------------------------------------------------------------------------------------------------------------
  Description:
   DIRAC: Program for Atomic and Molecular Direct Iterative Relativistic All-electron Calculations

  Versions:
     DIRAC/23.0
     DIRAC/24.0
     DIRAC/25.0
     DIRAC/26.0

---------------------------------------------------------------------------------------------------------------------
For detailed information about a specific "DIRAC" package (including how to load the modules) use the module's full
name. For example:

  $ module spider DIRAC/25.0

Let’s follow the suggestion using module spider DIRAC/25.0 obtaining

---------------------------------------------------------------------------------------------------------------------
   DIRAC: DIRAC/25.0
---------------------------------------------------------------------------------------------------------------------
   Description:
     DIRAC: Program for Atomic and Molecular Direct Iterative Relativistic All-electron Calculations

   You will need to load all module(s) on any one of the lines below before the "DIRAC/25.0" module is available to load

   GCC/14.2.0  OpenMPI/5.0.7

 Help:
   Description
   ===========
   DIRAC: Program for Atomic and Molecular Direct Iterative Relativistic All-electron Calculations


   More information
   ================
    - Homepage: http://www.diracprogram.org

So, now one only has to follow the suggestion module load GCC/14.2.0 OpenMPI/5.0.7 DIRAC/25.0.

3.3 Intel-Compilers Based Modules

Similar procedure to what has been outlined above applies for software using the Intel compilers, MKL, and MPI. At the entering level if the user executes module --nx av obtains

--------------------------------- /mnt/beegfs/apps/modules/all/Core ----------------------------------
  Anaconda3/2025.06-1                  Miniforge3/25.3.0-1 (D)    gompi/2024a
  Autoconf/2.71                        OSPRay/2.12.0              gompi/2025a
  Bison/3.8.2                          OpenSSL/1.1                gompi/2025b              (D)
  FastQC/0.11.9-Java-11                OpenSSL/3           (D)    iimkl/2023a
  GCC/12.3.0                           Pandoc/3.6.2               iimkl/2024a
  GCC/13.3.0                           Perl/5.38.0                iimkl/2025a              (D)
  GCC/14.2.0                           ant/1.10.12-Java-17        iimpi/2023a
  GCC/14.3.0                 (D)       ant/1.10.14-Java-11 (D)    iimpi/2024a
  GCCcore/12.3.0                       binutils/2.40              iimpi/2025a              (D)
  GCCcore/13.3.0                       binutils/2.42              imkl/2023.1.0
  GCCcore/14.2.0                       binutils/2.44       (D)    imkl/2023.2.0
  GCCcore/14.3.0             (D)       ecBuild/3.8.0              imkl/2024.2.0
  GPAW-setups/24.1.0                   ffnvcodec/12.0.16.0        imkl/2025.1.0            (D)
  GPAW-setups/24.11.0        (D)       ffnvcodec/12.1.14.0        intel-compilers/2023.1.0
  IJulia/1.29.0-Julia-1.11.6           ffnvcodec/12.2.72.0        intel-compilers/2024.2.0
  Java/11.0.27               (11)      ffnvcodec/13.0.19.0 (D)    intel-compilers/2025.1.1 (D)
  Java/17.0.15               (17)      flex/2.6.4                 intel/2023a
  Java/21.0.8                (D:21)    foss/2023a                 intel/2024a
  Julia/1.11.3-linux-x86_64            foss/2024a                 intel/2025a              (D)
  Julia/1.11.6-linux-x86_64            foss/2025a                 iompi/2023a
  Julia/1.11.7                         foss/2025b          (D)    iompi/2024a
  Julia/1.12.2                         gettext/0.21.1             iompi/2025a              (D)

After loading intel/2025a or iimpi/2025a (module load intel/2025a or module load iimpi/2025a) module list shows

Currently Loaded Modules:
  1) GCCcore/14.2.0   4) intel-compilers/2025.1.1   7) impi/2021.15.0      10) intel/2025a
  2) zlib/1.3.1       5) numactl/2.0.19             8) imkl/2025.1.0
  3) binutils/2.42    6) UCX/1.18.0                 9) imkl-FFTW/2025.1.0

and module --nx av displays

------------------- /mnt/beegfs/apps/modules/all/MPI/intel/2025.1.1/impi/2021.15.0 -------------------
  HDF5/1.14.6    OSU-Micro-Benchmarks/7.5    Wannier90/3.1.0     imkl-FFTW/2025.1.0 (L)
  HPL/2.3        Score-P/9.2                 buildenv/default

------------------------ /mnt/beegfs/apps/modules/all/Compiler/intel/2025.1.1 ------------------------
  OpenMPI/5.0.7    impi/2021.15.0 (L)

------------------------ /mnt/beegfs/apps/modules/all/Compiler/GCCcore/14.2.0 ------------------------
  Abseil/20250512.1                   ecBuild/3.11.0              (D)
  Autoconf/2.72                (D)    elfutils/0.193
  Automake/1.17                       expat/2.6.4
  Autotools/20240712                  flex/2.6.4                  (D)
  BeautifulSoup/4.13.4                flit/3.10.1
  Bison/3.8.2                  (D)    fontconfig/2.16.2
  Blosc/1.21.6                        fonttools/4.58.4
  Blosc2/2.19.0                       freetype/2.13.3
  Brotli/1.1.0                        gettext/0.24
  ...

On the top row the software compiled against Intel MPI (which is MPICH compiled with Intel compilers) is displayed followed by the software compiled with Intel C, C++ and Fortran compilers. On the bottom row the software compiled with GCC/14.2.0 as a backend is displayed.

The user can change to GCC based modules, e.g., to the foss/2025a toochain, by issuing module load foss/2025a obtaining with module list

Currently Loaded Modules:
  1) GCCcore/14.2.0             8) imkl/2025.1.0        15) hwloc/2.11.2     22) OpenMPI/5.0.7
  2) zlib/1.3.1                 9) imkl-FFTW/2025.1.0   16) OpenSSL/3        23) OpenBLAS/0.3.29
  3) binutils/2.42             10) intel/2025a          17) libevent/2.1.12  24) FlexiBLAS/3.4.5
  4) intel-compilers/2025.1.1  11) GCC/14.2.0           18) libfabric/2.0.0  25) FFTW/3.3.10
  5) numactl/2.0.19            12) XZ/5.6.3             19) PMIx/5.0.6       26) FFTW.MPI/3.3.10
  6) UCX/1.18.0                13) libxml2/2.13.4       20) PRRTE/3.0.8      27) ScaLAPACK/2.2.2-fb
  7) impi/2021.15.0            14) libpciaccess/0.18.1  21) UCC/1.3.0        28) foss/2025a

4. Loading a Particular Software

4.1 scipy, mpi4py, numpy, numexpr, pandas

These packages, as well as others, are included in the module scipy-bundle. Therefore, the user needs to follow the following procedure to use these packages: (i) decide which toolchain to use (foss or intel).

First check which scipy versions are available using module spider scipy obtaining

--------------------------------------------------------------------------------------------------
  scipy:
--------------------------------------------------------------------------------------------------
   Versions:
      scipy/1.11.1 (E)
      scipy/1.13.1 (E)
      scipy/1.16.0 (E)
      scipy/1.16.1 (E)
   Other possible modules matches:
      SciPy-bundle
 ...
 For example:

   $ module spider scipy/1.16.1
--------------------------------------------------------------------------------------------------

So, lets try module spider scipy/1.16.1

. code-block:: julia

scipy: scipy/1.16.1 (E)

This extension is provided by the following modules. To access the extension you must load one of the following modules. Note that any module names in parentheses show the module location in the softw are hierarchy.

SciPy-bundle/2025.07 (GCC/14.3.0)

Now we know that for scipy/1.16.1 we need to load SciPy-bundle/2025.07 that depdens on GCC/14.3.0. Hence, either load GCC/14.3.0 or the toochain that includes it, e.g., gompi/2025b or foss/2025b.

First clear the modules from your environment using module purge, then

module load foss/2025b  SciPy-bundle/2025.07

Now check the modules that were loaded using module list

Currently Loaded Modules:
 1) GCCcore/14.3.0       13) libfabric/2.1.0     25) ncurses/6.5
 2) zlib/1.3.1           14) PMIx/5.0.8          26) libreadline/8.2
 3) binutils/2.44        15) PRRTE/3.0.11        27) libtommath/1.3.0
 4) GCC/14.3.0           16) UCC/1.4.4           28) Tcl/9.0.1
 5) numactl/2.0.19       17) OpenMPI/5.0.8       29) SQLite/3.50.1
 6) XZ/5.8.1             18) OpenBLAS/0.3.30     30) libffi/3.5.1
 7) libxml2/2.14.3       19) FlexiBLAS/3.4.5     31) Python/3.13.5
 8) libpciaccess/0.18.1  20) FFTW/3.3.10         32) cffi/1.17.1
 9) hwloc/2.12.1         21) FFTW.MPI/3.3.10     33) cryptography/45.0.5
10) OpenSSL/3            22) ScaLAPACK/2.2.2-fb  34) virtualenv/20.32.0
11) libevent/2.1.12      23) foss/2025b          35) Python-bundle-PyPI/2025.07
12) UCX/1.19.0           24) bzip2/1.0.8         36) SciPy-bundle/2025.07

Now the user can use, for example, mpi4py or numpy in their submission scripts.

4.3 GROMACS

In OBLIVION there are several versions of GROMACS compiled with/without PLUMED. First determine the GROMACS versions that are available using module spider gromacs

...
Versions:
      GROMACS/2023.3-PLUMED-2.9.0
      GROMACS/2023.4
      GROMACS/2024.4
      GROMACS/2025.2
      GROMACS/2025.4
      GROMACS/2026.2

Check GROMACS/2026.2 using module spider GROMACS/2026.2

Description:
   GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian
   equations of motion for systems with hundreds to millions of particles. This is a CPU only
   build, containing both MPI and threadMPI binaries for both single and double precision. It
   also contains the gmxapi extension for the single precision MPI build.

   You will need to load all module(s) on any one of the lines below before the "GROMACS/2026.2" module is available to load.

   GCC/14.3.0  OpenMPI/5.0.8

So, follow the instruction: module load GCC/14.3.0 OpenMPI/5.0.8 GROMACS/2026.2 and check what was loaded with module list

Currently Loaded Modules:
  1) GCCcore/14.3.0       14) PMIx/5.0.8          27) Tcl/9.0.1
  2) zlib/1.3.1           15) PRRTE/3.0.11        28) SQLite/3.50.1
  3) binutils/2.44        16) UCC/1.4.4           29) libffi/3.5.1
  4) GCC/14.3.0           17) OpenMPI/5.0.8       30) Python/3.13.5
  5) numactl/2.0.19       18) OpenBLAS/0.3.30     31) cffi/1.17.1
  6) XZ/5.8.1             19) FlexiBLAS/3.4.5     32) cryptography/45.0.5
  7) libxml2/2.14.3       20) FFTW/3.3.10         33) virtualenv/20.32.0
  8) libpciaccess/0.18.1  21) FFTW.MPI/3.3.10     34) Python-bundle-PyPI/2025.07
  9) hwloc/2.12.1         22) ScaLAPACK/2.2.2-fb  35) SciPy-bundle/2025.07
 10) OpenSSL/3            23) bzip2/1.0.8         36) networkx/3.5
 11) libevent/2.1.12      24) ncurses/6.5         37) mpi4py/4.1.0
 12) UCX/1.19.0           25) libreadline/8.2     38) GROMACS/2026.2
 13) libfabric/2.1.0      26) libtommath/1.3.0

5. Operations With Modules

5.1 Purging Modules

The user can purge the loaded modules by executing

module purge

5.2 Save and Restore Modules

Often a user uses different environments for his/her processes. Hence, he/she needs to load and purge the loaded modules several times. An easy way to proceed is to save those module environments into a file, say <module_environment>, by using

module save <module_environment>.

Later, the environment can be reloaded using the command

module restore <module_environment>

5.3 Module Details

To learn further details of a module, how to load it, and dependencies use

module spider <module_name>

and to find detailed information of a module use

module spider <module_name/version>

Let’s check the information on GROMACS by using module spider GROMACS obtaining

------------------------------------------------------------------------------------------------------
   GROMACS:
------------------------------------------------------------------------------------------------------
   Description:
      GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian
      equations of motion for systems with hundreds to millions of particles. This is a CPU only
      build, containing both MPI and threadMPI builds for both single and double precision. It also
      contains the gmxapi extension for the single precision MPI build next to PLUMED.

   Versions:
     GROMACS/2021.5-PLUMED-2.8.0
     GROMACS/2021.5-PLUMED-2.8.1
     GROMACS/2021.5

------------------------------------------------------------------------------------------------------
   For detailed information about a specific "GROMACS" package (including how to load the modules) use the
   module's full name.
   Note that names that have a trailing (E) are extensions provided by other modules.
   For example:

      $ module spider GROMACS/2021.5

and obtain details on the module by using module spider GROMACS/2021.5

------------------------------------------------------------------------------------------------------
   GROMACS: GROMACS/2021.5
------------------------------------------------------------------------------------------------------
   Description:
      GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian
      equations of motion for systems with hundreds to millions of particles. This is a CPU only
      build, containing both MPI and threadMPI builds for both single and double precision. It also
      contains the gmxapi extension for the single precision MPI build.

   You will need to load all module(s) on any one of the lines below before the "GROMACS/2021.5" module
   is available to load.

      GCC/11.2.0  OpenMPI/4.1.1
      GCC/11.3.0  OpenMPI/4.1.4

   ...

   More information
   ================
    - Homepage: https://www.gromacs.org


   Included extensions
   ===================
   gmxapi-0.2.2.1

6. List of Commonly Used Commands

Command

Function

module avail

Displays the list of available modules in the machine

module list

Displays the modules that are currently loaded

module add [module_name]

Loads the module [module_name]

module unload [module_name]

Unloads the module [module_name]

module purge

Clears all modules in your environment

module save [name_of_file]

Saves a module environment in the file [name_file] for later use

module restore [name_of_file]

Loads a module environment saved in file [name_file]

module savelist

Displays the list of saved modules environment

7. Available Modules

To list all the available modules the user can use the command module spider obtaining

---------------------------------------------------------------------------------------------------
 The following is a list of the modules and extensions currently available:
---------------------------------------------------------------------------------------------------
ABINIT: ABINIT/9.6.2
  ABINIT is a package whose main program allows one to find the total energy, charge density and
  electronic structure of systems made of electrons and nuclei (molecules and periodic solids)
  within Density Functional Theory (DFT), using pseudopotentials and a planewave or wavelet
  basis.

ANSYS_CFD: ANSYS_CFD/2021R1, ANSYS_CFD/2022R2
  ANSYS computational fluid dynamics (CFD) simulation software allows you to predict, with
  confidence, the impact of fluid flows on your product throughout design and manufacturing as
  well as during end use. ANSYS renowned CFD analysis tools include the widely used and
  well-validated ANSYS Fluent and ANSYS CFX.
...

For the full list of installed modules see the installed software section.