Software
We provide a basic set of toolchains and some common libraries via modules.
To build common HPC software packages, we provide a central installation of the Spack package manager.
We provide a basic set of toolchains and some common libraries via modules.
To build common HPC software packages, we provide a central installation of the Spack package manager.
We use the Lmod module system:
module available
(shortcut ml av
) lists available modulesmodule load
loads selected modulesmodule list
shows modules currently loaded in your environmentThere are also hidden modules that are generally less relevant to users but can
be viewed with ml --show_hidden av
.
We are committed to providing the tools you need for your research and development efforts. If you require modules that are not listed here or need different versions, please contact our support team, and we will be happy to assist you.
We use the Spack package manager to build a set of common HPC software packages.
This section describes how to use an extent the central installation.
Alternatively, you can use a full independent Spack installation in your home directory, or use EasyBuild.
Activate the central Spack installation with source /cluster/spack/0.22.2/share/spack/setup-env.sh
.
You can use this as a starting point for your own software builds, without the need to rebuild everything from scratch.
For this purpose, add the following three files to ~/.spack
:
~/.spack/upstreams.yaml
upstreams:
central-spack:
install_tree: /cluster/spack/0.22.2/opt/spack
~/.spack/config.yaml
config:
install_tree:
root: $HOME/spack/opt/spack
source_cache: $HOME/spack/cache
~/.spack/modules.yaml
modules:
default:
roots:
lmod: $HOME/spack/share/spack/lmod
enable: [lmod]
lmod:
all:
autoload: direct
hide_implicits: true
hierarchy: []
Also, put these two lines into your ~/.bashrc
:
export MODULEPATH=$MODULEPATH:$HOME/spack/share/spack/lmod/linux-almalinux9-x86_64/Core
. /cluster/spack/0.22.2/share/spack/setup-env.sh
You can then use the central Spack installation, with local additions added in ~/spack
.
Run spack compiler find
to add the system compiler to your compiler list. Also run it after loading other compilers via module load
to add those, too.
If you need to override selected package definitions, create an additional file ~/.spack/repos.yaml
:
repos:
- $HOME/spack/var/spack/repos
and create a description for your local repo in ~/spack/var/spack/repos/repo.yaml
:
repo:
namespace: overrides
You can then copy the package definition you need to override, and edit it locally. Example for ffmpeg:
$ cd ~/spack/var/spack/repos/
$ mkdir -p packages/ffmpeg
$ cp /cluster/spack/0.22.2/var/spack/repos/builtin/packages/ffmpeg/package.py packages/ffmpeg
$ vim packages/ffmpeg/package.py
... edit as necessary (e.g. disable the patch for version 6.1.1) ...
When running spack install ffmpeg
, your local override will take precedence over the central version.