Utiliser les modules

L’utilisation des modules permet de compléter très simplement un certain nombre de variables d’environnement telles que $PATH, $LD_LIBRARY_PATH

Pour chaque application / bibliothèque disponible sur le cluster, vous trouverez donc un module à charger pour pouvoir l’utiliser. Les modules ont pour nom : <nom_application>/<version>

Les modules sont gérés de façon hiérarchique :

  • les modules qui ne dépendent de rien

  • les modules qui dépendent d’un compilateur

  • les modules qui dépendent d’un couple (compilateur – MPI)

Ainsi

  • si aucun module n’est chargé, la commande module avail donne la liste des modules qui ne dépendent de rien.

  • Si vous chargez un compilateur, la commande module avail donne la liste des modules qui dépendent de ce compilateur.

  • Si vous chargez un compilateur et un module MPI, la commande module avail donne la liste des modules qui dépendent de ce couple (compilateur – MPI)

  • Lors du chargement d’un module, si la version n’est pas spécifiée alors c’est la version par défaut qui sera utilisée. Voici les * commandes de base de la commande module :

Commandes de base

module spider

liste tous les modules disponibles indépendamment des dépendances

module spider r/4.0

liste tous les modules nécessaires au fonctionnement du module r/4.0

module avail

liste tous les modules disponibles en fonction des modules déjà chargés

module list

liste tous les modules chargés par l’utilisateur

module load/unload openmpi/4.1

charge/décharge le module openmpi/4.1
  • Les commandes mpicc/mpif90 ou mpirun sont dans le PATH par défaut

  • Les libs adéquates sont chargés lors des opérations de compilation/exécution

module whatis < nom module >

description synthétique du module

module help

aide sur la syntaxe

module purge

décharge tous les modules

module load gcc/10.2 openmpi/4.1

pour un démarrage rapide vous pouvez charger les modules gcc/10.2 et openmpi/4.1