Chargement de l’environnement de travail (interpréteur, compilateur...)
Pour faire cohabiter les différentes versions des programmes que les utilisateurs souhaitent utiliser, l’environnement par défaut ne donne accès qu'à très peu de programmes ou de librairies.. Parmi les outils installés et disponibles de façon immédiate, il y a bien sûr un interpréteur python, une version de g++, etc... mais pas forcément la combinaison qui vous intéresse, avec l'ensemble des librairies dont vous avez besoin.
Pour ajouter ou rendre disponible des programmes ou des librairies, nous proposons 3 types de solution:
module
permet, en changeant des variables d'environnement (PATH
, ...), de rendre disponible des programmes que nous avons installés dans des répertoires non répertoriés dans le système. Il y a un nombre limité de modules disponibles, mais si ce dont vous avez besoin y est, cette solution est a privilégier pour des raisons évidente de disponibilité et d'occupation disque.conda
permet d'installer ses propres versions d'un programme et de ses dépendances en restant sur le système de base, et sans avoir besoin de droit root. Beaucoup de programmes et de librairies sont disponibles par ce biais, dans la limite bien sûr de ce qu'il est possible de changer sans droits root.singularity
peut être vu comme "le docker du calcul". Il permet de définir un système complet qui vient se raccorder sur le noyau en cours. Il devient donc possible d'installer à peu près tout ce qu'on veut, et ce avec des images qu'on peut copier et utiliser à l'identique sur d'autres machines pour développer et tester avec une très bonne reproductibilité.