Utilisation des modules¶
De nombreux logiciels sont disponibles sur la plateforme de calcul VALERIA. Ces logiciels sont principalement fournis par l'Alliance de recherche numérique du Canada (Alliance). Ceci assure la compatibilité entre les plateformes de calcul.
La gestion des logiciels s'effectue à l'aide de la commande module
, qui permet de :
- Chercher les logiciels disponibles
- Décrire les logiciels et leurs spécifications
- Configurer et gérer l'utilisation des logiciels
La commande module
contient plusieurs sous-commandes et options. Utiliser la sous-commande module help
pour obtenir plus d'information. La page Utiliser des modules de l'Alliance en décrit les fonctionnalités.
Avec Python, la plupart des logiciels et librairies ne proviennent pas des modules, mais plutôt de paquets binaires (wheels). La page Python de l'Alliance en décrit l'installation et l'usage.
Les paquets R et Perl ne sont pas accessibles via des modules. Il est recommandé de les installer à même votre espace personnel ou celui de votre projet. Consulter les pages R et Perl de l'Alliance pour plus de détails.
Aide-mémoire module¶
Description | Commande | Exemples |
---|---|---|
Afficher les modules disponibles1 | module avail |
- |
Chercher un module | module spider <nom> |
module spider python |
Décrire un module | module spider <nom>/<version> |
module spider python/3.12 |
Charger un module | module load <nom> module load <nom>/<version> |
module load python module load python/3.12 |
Décharger un module | module unload <nom> |
module unload python |
Lister les modules chargés | module list |
- |
Décharger tout | module purge |
- |
1 Pour l'environnement standard courant (Ex. : StdEnv/2023)
Chargement automatique de modules¶
Il est déconseillé de charger automatiquement des modules en utilisant les fichiers .bashrc
ou .bash_profile
.
La bonne pratique est plutôt de charger les modules nécessaires, soit :
- sur la ligne de commande pour un usage interactif
- dans vos scripts de tâches afin qu'elles soient reproductibles
- en utilisant les collections de modules
Exemples d'usage interactif¶
Lister les modules chargés
Chercher un module
Obtenir de l'information détaillée d'un module
Charger un module
Spécifier la version du module est facultatif, mais recommandé, pour le chargement. Une version par défaut sera chargée si aucune n'est spécifiée.
Utilisation de modules dans un script¶
Exemple d'un script avec chargement de module avec versions explicites :
#!/bin/bash
#
#SBATCH --partition=batch
#SBATCH --cpus-per-task=2
#SBATCH --mem=2G
#
# Chargement des modules désirés
module load python/3.10.2 r/4.1.2
# Placer les instructions liées à vos tâches ici
python -V
R --version | head -n 1
Utiliser les collections de modules¶
Une collection de modules consiste en une configuration de modules chargés, puis sauvegardée, pour une réutilisation ultérieure.
Charger les modules requis
Sauvegarder une collection
Ultérieurement, charger les modules de la collection