Installation Manuelle
L’Installation doit se faire sur un nœud de calcul , effectuer une allocation en mode interactif avant de procéder à l’installation.
L’installation peut se faire sur un nœud de login s'il présente la même architecture de processeur, la même version du système d'exploitation ainsi que des packages similaires et si le processus d'installation ne requiert pas une utilisation intensive du CPU ou de la RAM.
Vérifications
Vérifier que l’application n’est pas déjà installer , puis vérifier la présence des compilateurs appropriés et des dépendances dans les versions requises ( module spider )
Precompiled Binary
Télécharger le fichier avec wget < URL> ou git clone < URL> et le décompresser avec tar ou unzip $tar xzvf software-name-0.1.tar.gz -C /home/$USER/local/apps/software-name/version changer le droit d’accès si necessaire chmod +x bin/executable
Installation manuelle : Install From Source
Configure-Make-MakeInstall
configure est généralement un script shell complexe qui collecte des informations sur le système et prépare le processus de compilation.
Utiliser l'option --prefix de l'outil configure pour spécifier l'emplacement d'installation.
$./configure --prefix=/home/$USER/local/apps/software-name/version
le script configure génère un fichier appelé Makefile.
Ce fichier contient des instructions pour le programme make sur la manière de compiler le logiciel
$ make
Lance les commandes de compilations
$ make install
installe les fichiers binaires, les bibliothèques, les d'autres ressources générés par la compilation dans le chemin prefix
CMake install
CMake est le système de construction multiplateforme. Le processus de construction est décrit dans un simple fichier texte CMakeLists.txt via des commandes spéciales de Cmake .il génère une chaîne de compilation native pour la plate-forme et le compilateur souhaités.
Créez un répertoire de build et accédez-y.
$mkdir
/home/$USER/local/share/software-name-0.1/build;
cd build
Exécutez la commande cmake avec les options appropriées
$cmake ..
-DCMAKE_INSTALL_PREFIX=/home/$USER/local/apps/soft
ware-name/version
Makefile est créé une fois la configuration terminée
$make
$make install
Installation manuelle – Création de modulefile
Pour admin :
Le chemin des modules et déjà déclaré tous les nœuds (MODULEPATH )
Pour admin :
Créer un fichier module utilisateur pour décrire l'emplacement et la configuration de l'environnement ( par exemple en définissant les variables PATH, LD_LIBRARY_PATH et autres) Exemple d’installation de l’application software-name avec la version « X.Y»: créer le répertoire
/home/$USER/local/modules/software-name/toolchain/
Puis un fichier nommé comme le numéro de la version (X.Y) de votre logiciel
/home/$USER/local/modules/software-name/toolchain/ X.Y
Afin d’utiliser ce module, indiquer à Lmod où le chercher en lançant la commande module use :
$ module use /home/$USER/local/modules
$ module load software-name/toolchain/X.Y
Installation Automatique
EASYBUILD
- EasyBuild est un logiciel de build et d'installation d’application visant spécifiquement les systèmes HPC, avec un accent sur l'automatisation du build, la reproductibilité et la résolution automatique des dépendances.
- Il est entièrement compatible avec le système de modules Lmod, et chaque installation d'EB génère automatiquement un fichier module correspondant qui vous permet de charger le logiciel dans votre environnement.
- Les applications sont installés dans votre répertoire personnel sous $EASYBUILD_PREFIX.
- EasyBuild dispose d'un large référentiel d’application disponibles en différentes versions. Les
applications
disponibles peuvent être recherchés en utilisant la commande suivante :
$eb -S software-name
$mkdir -p /home/$USER/local/Easybuild
$export EASYBUILD_PREFIX=/home/$USER/local/Easybuild
Les logiciels installés sont placés sous ${EASYBUILD_PREFIX}/software/ Le chemin d'installation des modules ${EASYBUILD_PREFIX}/modules/all
Pour installer une application avec EasyBuild, la première chose à faire est de choisir une chaîne d'outils de compilation supportée par EasyBuild. Cette chaine d’outils spécifie les dépendances associées, qui sont chargées avec l’application. Ces dépendances peuvent avoir d'autres dépendances.
Les chaînes d'outils (toolchain ) de compilation sont essentiellement un ensemble de compilateurs avec un ensemble de bibliothèques qui fournissent un support supplémentaire qui est généralement requis pour construire des logiciels.Par exemple :
- GCC consiste en GCCcore et binutils
- gompi consiste en GCC et OpenMPI
- foss est basé sur le compilateur GCC et sur des bibliothèques open-source (OpenMPI, OpenBLAS, FFTW, ScaLAPACK etc.).
- intel est basé sur le compilateur Intel et sur des bibliothèques Intel (Intel MPI, Intel Math Kernel
Library, etc.).
$eb Geant4-10.5-foss-2021b.eb -r
Dans cet exemple on lance l’installation de l’application Geant4 version 10.5 dont le toolchain est « foss-2021b ». L’option -r (--robot) active la résolution des dépendances, en installant automatiquement toutes les dépendances. Une fois l’installation terminée ,vous devriez être en mesure d'utiliser l’application, en chargeant simplement le module du package installé :
$ module use /home/$USER/local/Easybuild/all
$ module load software-name
SPACK
Spack est un gestionnaire de paquets puissant et flexible conçu pour répondre aux besoins des utilisateurs de supercalculateurs, de Linux et de MacOS. Il offre une large gamme de fonctionnalités qui le rendent idéal pour gérer des installations de logiciels complexes et dépendantes.
Spack a un flux de travail très simple. c'est un référentiel Git de fichiers de paquets écrits en Python pur incluant les exigences de construction logicielle et les dépendances.
git clone https://github.com/spack/spack.git
source spack/share/spack/setup-env.sh
Spack s’intègre avec Lmod pour générer automatiquement les modulefiles après installation
spack install lmod
source $(spack location -i lmod)/lmod/lmod/init/bash
Quelques commandes spack :
spack list < software-name> # chercher un logiciel par nom
spack info < software-name> # afficher les informations et les variants du logiciel
spack spec -I < software-name> # afficher les specifications (dependances)
spack install < software_name> ou < software_name@version> ou < software_name@version
%compiler@version>
CONDA
Conda est un gestionnaire de paquets populaire pour Python, utilisé par les scientifiques des données, les développeurs et les data analysts pour installer et gérer des bibliothèques et des environnements Python. Il est connu pour sa facilité d'utilisation, sa gestion des environnements virtuels et sa large collection de paquets précompilés.
Conda offre différentes options pour installer des paquets à partir de divers canaux ( bioconda, anaconda ,conda-forge)
Utiliser la commande conda create pour créer un nouvel environnement virtuel
$conda create -n myenv
Activez l'environnement nouvellement créé à l'aide de la commande conda activate
$conda activate myenv
Afficher la liste des environnements virtuels existants:
$conda env list
Une fois qu'un environnement virtuel est activé, installer des paquets à l'aide de la commande conda install
$conda install numpy
Spécifier le canal
$conda install pandas -c anaconda
Spécifier la version
$conda install tensorflow=2.7.0