Outils pour utilisateurs

Outils du site


apptainer

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
apptainer [2026/03/20 14:44] adminapptainer [2026/03/20 15:11] (Version actuelle) admin
Ligne 1: Ligne 1:
 ====== Utilisation d'Apptainer ====== ====== Utilisation d'Apptainer ======
  
-Cette page décrit comment créer et utiliser un conteneur Apptainer sur le cluster. +Cette page décrit comment utiliser Apptainer pour faire tourner un programme C 
 +utilisant la bibliothèque OpenBLAS sur le cluster. Elle couvre la création de 
 +l'image conteneur, sa construction sur votre machine personnelle, son transfert 
 +sur le cluster, et la soumission d'un job Slurm. 
 + 
 +OpenBLAS n'étant pas installé sur les nœuds de calcul, Apptainer permet d'embarquer 
 +la bibliothèque dans une image portable et de l'utiliser sans intervention de 
 +l'administrateur système.
  
 ===== Prérequis ===== ===== Prérequis =====
Ligne 80: Ligne 87:
 apptainer exec openblas.sif ls /usr/lib/x86_64-linux-gnu/libopenblas* apptainer exec openblas.sif ls /usr/lib/x86_64-linux-gnu/libopenblas*
 </code> </code>
 +La première commande doit afficher la version de GCC, par exemple :
 +  gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0
  
 +La seconde doit afficher le chemin de la bibliothèque OpenBLAS, par exemple :
 +  /usr/lib/x86_64-linux-gnu/libopenblas.so
 +  /usr/lib/x86_64-linux-gnu/libopenblas.so.0
 +
 +Si l'une des deux commandes retourne une erreur, l'image est incomplète —
 +recommencez la construction.
 ===== 3. Transférer l'image sur le cluster ===== ===== 3. Transférer l'image sur le cluster =====
  
Ligne 153: Ligne 168:
 <code bash> <code bash>
 #!/bin/bash #!/bin/bash
-#SBATCH --job-name=bench_apptainer 
 #SBATCH --nodes=1 #SBATCH --nodes=1
 #SBATCH --ntasks=1 #SBATCH --ntasks=1
 #SBATCH --cpus-per-task=1 #SBATCH --cpus-per-task=1
-#SBATCH --account=votre_compte 
-#SBATCH --output=bench_apptainer_%j.out 
-#SBATCH --error=bench_apptainer_%j.err 
  
 IMG=~/openblas.sif IMG=~/openblas.sif
Ligne 173: Ligne 184:
     -Wl,-rpath,/usr/local/lib     -Wl,-rpath,/usr/local/lib
  
-# Exécution (10 runs) +# Exécution dans le conteneur 
-for i in $(seq 1 10); do +apptainer exec $IMG $BIN 
-    echo -n "Run $i : " +
-    apptainer exec $IMG $BIN +
-done+
 </code> </code>
  
Ligne 192: Ligne 201:
 </code> </code>
  
-Surveillez l'avancement : 
  
-<code bash> +Ensuite tout se déroule comme un job classique.
-squeue -u $USER +
-</code>+
  
-Consultez les résultats une fois le job terminé : 
- 
-<code bash> 
-cat bench_apptainer_<jobid>.out 
-</code> 
- 
-===== Résultats attendus ===== 
- 
-<code> 
-Run 1 : DGEMM N=8192 : xx.xxx s | xx.xx GFLOPS 
-Run 2 : DGEMM N=8192 : xx.xxx s | xx.xx GFLOPS 
-... 
-</code> 
  
 ===== Références ===== ===== Références =====
apptainer.1774014252.txt.gz · Dernière modification : 2026/03/20 14:44 de admin