Utiliser module
Environment modules
et lmod
sont des systèmes qui permettent de changer rapidement d'un environnement à un autre pour des programmes ou des librairies. Pour celà, on utilise des "modulefiles
". Pour l'instant, les modulefiles disponibles sont accessibles par la commande :
module avail
Les modules dans
deprecated/
correspondent aux modulefiles des anciens clusters et n'ont pas été testé...
Comment l'utiliser ?
$ module add R/3.5.3
$ R --version
R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
...
$ which R
/share/apps/sing-images/3.1/R
$ module list
Currently Loaded Modules:
1) R/3.5.3
$ module rm R/3.5.3
$ module list
No modules loaded
A noter qu'un module peut charger et décharger plusieurs autres modules. Pensez à utiliser régulièrement module list
et consulter votre variable $PATH
pour voir l'état de votre environnement actuel.
echo $PATH
# ou, pour afficher toutes les variables d'environnement :
env
Dans le cadre de librairies, la variable d'environnement modifiée, est, le plus souvent $LD_LIBRARY_PATH
.
Dans vos scripts de soumission
sbatch
, pensez à précéder la ligne d'exécution de votre script par le chargement de la version que vous souhaitez utiliser avec module.
Exemple :
sbatch mon_script.sbatch
# avec mon_script.sbastch qui contient, par ex. :
#!/bin/bash
#SBATCH --job-name=myRscript
#SBATCH --output=myRscript.o
module load R/3.5.3
R CMD BATCH my_script.R