Platforms
The cluster provides two distinct software environments:
- Old Software (CentOS 7):
- Location:
labo1,labo1-v2,m20-[1,2],kech1andlia3partitions - Purpose: Ensures compatibility with older code, libraries, and hardware
- Location:
- New Software (RHEL 8):
- Location: All other partitions
- Purpose: Provides updated scientific software and compilers
Important Compatibility Notes:
- compile your code directly on those nodes
-
Include this line in your Slurm script to load environment modules in your Slurm jobs
source /etc/profile.d/z00_lmod.sh
Login nodes use RHEL 8 - to run on CentOS 7 partitions
(labo1/labo1-v2/m20-[1,2]/kech1/lia3) :
Modules
The cluster uses Lmod (Environment Modules) to manage software versions. Key commands:
| Command | Description |
|---|---|
module avail |
List all available software packages |
module list |
Show currently loaded modules |
module load <package> |
Load a specific software package |
module unload <package> |
Remove a package from your environment |
module purge |
Unload all currently loaded modules |
module spider <keyword> |
Search for packages by name/description |
module show <package> |
Display details about a specific package |
Important Usage Notes:
- Avoid mixing Python modules with Conda: Do not load Python modules inside active Conda environments, as this may cause conflicts.
-
Conda in .bashrc: Avoid automatically loading Conda in your
.bashrcfile, as this can interfere with module functionality. Instead, activate Conda environments manually when needed.
Module Naming Convention
Scientific software modules follow a standardized naming scheme that encodes build information:
- Compiler Version: Always included (e.g.,
gnu14.2.0) avxindicate compilation with AVX support- GPU Support:
- If
cudaappears in the name, the software is GPU-accelerated smXXindicates specific GPU compute capability
- If
- Multi-node Computing:
openmpi= Supports multi-node calculations via TCP/IPopenmpi+psm2= Adds Omni-Path driver support (Network details)openmpi+ucx= Adds Mellanox InfiniBand support (Network details)
Virtual Environment
To create the virtual environment$ python -m venv myenv
To activate the environment
$ source myenv/bin/activate
Your prompt should change to show the active environment.
To install Python packagesWith the environment active, install packages using pip:
$ pip install numpy pandas matplotlip
Deactivate with :
$ deactivate
If you want to save your environment
$ pip freeze > requirements.txt