Modules » Historique » Version 7
Argus Rusard, 18/01/2024 15:19
| 1 | 1 | Argus Rusard | # Modules |
|---|---|---|---|
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | Les modules d'environnement (http://modules.sourceforge.net/) sont un outil qui permet de gérer la liste et la version des logiciels et librairies accessibles depuis la session utilisateur. |
||
| 6 | |||
| 7 | La commande `module help` fournit une description des sous commandes disponibles. |
||
| 8 | |||
| 9 | ## exemples |
||
| 10 | |||
| 11 | |||
| 12 | * liste des modules actuellement chargés: |
||
| 13 | |||
| 14 | ``` shell |
||
| 15 | module list |
||
| 16 | ``` |
||
| 17 | |||
| 18 | * liste des modules disponibles: |
||
| 19 | |||
| 20 | ``` shell |
||
| 21 | module avail |
||
| 22 | ``` |
||
| 23 | |||
| 24 | * charger le module gcc: |
||
| 25 | |||
| 26 | ``` shell |
||
| 27 | module load gcc |
||
| 28 | ``` |
||
| 29 | |||
| 30 | * décharger le module gcc: |
||
| 31 | |||
| 32 | ``` shell |
||
| 33 | module unload gcc |
||
| 34 | ``` |
||
| 35 | |||
| 36 | * obtenir des informations sur le module gcc |
||
| 37 | |||
| 38 | ``` shell |
||
| 39 | module help gcc |
||
| 40 | ``` |
||
| 41 | |||
| 42 | ## Modules "de base" |
||
| 43 | |||
| 44 | Le cluster vient avec un certain nombre de modules prédéfinis (ou installés par les puissants administrateurs). Parmi lesquels on trouve la suite Intel, les librairies MPI, etc... |
||
| 45 | |||
| 46 | ## Modules "contrib" |
||
| 47 | |||
| 48 | 6 | Argus Rusard | Certains modules sont installés par des membres de la communauté qui en possèdent le droit. Ces membres appartiennent au groupe UNIX "elfes-de-maison", ce qui leur permet de déposer les logiciels et les modulefiles (fichier de définition du module associé au logiciel) dans l'emplacement adéquat sous `/nfs/softs/contrib` |
| 49 | 5 | Argus Rusard | |
| 50 | _Remarque:_ |
||
| 51 | 7 | Argus Rusard | - l'installation du logiciel se fait dans le répertoire: `/nfs/softs/contrib/apps/nomLogiciel/x.y.z` |
| 52 | 5 | Argus Rusard | - le fichier définissant le module est a mettre dans `/nfs/softs/contrib/modulefiles/nomLogiciel/x.y.z` (ou `x.y.z` est le numéro de version du logiciel) |
| 53 | 1 | Argus Rusard | |
| 54 | Pour une liste exhaustive, taper dans votre shell: |
||
| 55 | |||
| 56 | ``` shell |
||
| 57 | module avail |
||
| 58 | ``` |
||
| 59 | |||
| 60 | ## Modules "Privates" |
||
| 61 | |||
| 62 | 4 | Argus Rusard | Chaque utilisateur peut créer ses propres modules. Cela lui permet de modifier son environnement pour gérer des applications de différentes versions. |
| 63 | 1 | Argus Rusard | |
| 64 | Il suffit dans un premier temps de charger le module use.own et de placer les fichiers correspondants au module dans le répertoire .privatemodules qui va être créé dans votre répertoire personnel. |
||
| 65 | |||
| 66 | Dans le nom du répertoire .privatemodules le point en début de nom sert à spécifier que c'est un fichier caché. Il faut utiliser l'option -a de ls pour pouvoir le voir. |
||
| 67 | |||
| 68 | Dans ce répertoire vous pouvez placer des modulefiles qui servent à modifier votre environnement pour que le système puisse utiliser votre logiciel (modification du PATH ou PYTHONPATH, modification de la variable LD_LIBRARY_PATH pour pointer vers les librairies dont a besoin votre code, ...etc). |
||
| 69 | |||
| 70 | Un petit exemple: [[wmodule|écrire son module]] |
||
| 71 | |||
| 72 | "ce site":https://modules.readthedocs.io/en/latest/modulefile.html est un bon endroit pour approfondir l'écriture des modulefiles. |
||
| 73 | Vous pouvez également vous inspirer des modules qui se trouvent dans le répertoire /nfs/softs/contrib/modulefile |
||
| 74 | 2 | Argus Rusard | |
| 75 | ## Modules "[[Spack]]" |
||
| 76 | |||
| 77 | L'environnement de gestion [[Spack]] disponible sur le cluster expose ses logiciels aussi au travers des modules. |
||
| 78 | |||
| 79 | On peut les voir dans le dépôt `/nfs/softs/apps/spack/share/spack/modules/linux-rocky8-zen3`. |
||
| 80 | 3 | Argus Rusard | |
| 81 | Si on ne souhaite pas voir les module spack avec la commande `module available`, on peut désactiver le dépôt avec la commande suivante: |
||
| 82 | |||
| 83 | ```bash |
||
| 84 | module unuse /nfs/softs/apps/spack/share/spack/modules/linux-rocky8-zen3 |
||
| 85 | ``` |