Module Systems (Admin Guide)
Admin Guide Module Systems
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Software
- LMOD
- Actively developed
- Integrated by EasyBuild
- In-build module usage tracking
- Support for different module naming schemes
- Supported languages: Lua and TCL
- Installation via OpenHPC repository package
- Alternative: Environment Modules
- Stale development
- Since 2018 new maintainer
- Supported languages: TCL
Naming Conventions
We are employing a so-called hierarchical module naming scheme. This means that only those modules are shown to the user which can be loaded based on the current user environment.
Example: A user wants to load the module GROMACS which depends on the GCC compiler and open OpenMPI library. By default the user can only see the GCC module: 1. module load GCC –> now the OpenMPI module is visible 2. module load OpenMPI –> now the GROMACS module is visible 3. module load GROMACS
Module Usage Tracking
- Tracking of module usage can directly be integrated into LMOD –> see https://lmod.readthedocs.io/en/latest/300_tracking_module_usage.html
- Rquirements: MariaDB (MySQL) and rsyslog functionality
- NOTE: Clone the git repository and look into the folder
contrib/tracking_module_usage
to find the examples and scripts described in the guide above
Deprecated Modules
- Create a separate software stack every 6 to 12 months and create meta modules for the users to explicitly load a specific year –> e.g.
module load 2020a
- This way, users get a feeling for how old their used software is
- You can easily deprecate older software stacks by just deleting the meta module but at the same time keep the software stack for archival purposes
- Module trees do not get cluttered