Aller au contenu

GetFEM

Lancer des calculs

On rappelle brièvement les commandes successives à lancer et expliquées ici dans le détail.

Pour se connecter à la frontale de soumission:

ssh -X calcul

Pour lancer un job interactif avec 16 threads:

salloc srun --qos=large -c 16 --pty /bin/bash

Pour activer l'environnement Spack et pouvoir utiliser les logiciels installés avec :

. /opt/spack/share/spack/setup-env.sh

Attention : premier lancement lent

Le premier appel de cette commande prend environ 1 minute car Spack doit créer un dossier .spack dans votre répertoire personnel.

C'est tout à fait normal : ne fermez pas votre terminal et patientez.

Les appels suivants seront instantanés.

Téléchargement

Utiliser les espaces disques décrit ici pour que la compilation se fasse dans des temps raisonnables avec des accès rapides aux fichiers:

mkdir -m 700 /local/<username> ; cd /local/<username>

ou

mkdir -m 700 /scratch/<username> ; cd /scratch/<username>

Vous pouvez ensuite télécharger directement GetFEM, le désarchiver et rentrer dans le répertoire créé en utilisant les commandes:

wget http://download-mirror.savannah.gnu.org/releases/getfem/stable/getfem-5.4.2.tar.gz
tar zxvf getfem-5.4.2.tar.gz
cd getfem-5.4.2

Compilation

Il est tout d'abord nécessaire d'appeler la suite d'outils nécessaires à la compilation:

spack load gcc@13.2.0 openblas@0.3.26/dc6bru2 mumps@5.7.3 miniconda3@22.11.1 qhull@2020.2

de fixer des variables d'environnement utiles (les répertoires d'installations):

export BLAS_DIR=$(spack location -i openblas@0.3.26/dc6bru2)
export MUMPS_DIR=$(spack location -i mumps@5.7.3)
export QHULL_DIR=$(spack location -i qhull@2020.2)

puis de lancer le configure en adaptant /<scratch/local>/<username>:

./configure --prefix=/<scratch/local>/<username>/getfem --enable-mumps --enable-openmp --enable-python --enable-qhull BLAS_LIBS="-L$BLAS_DIR/lib -lopenblas" CXXFLAGS="-fopenmp -I$MUMPS_DIR/include -I$QHULL_DIR/include" LDFLAGS="-L$MUMPS_DIR/lib -L$QHULL_DIR/lib" --with-mumps="-lsmumps -ldmumps -lcmumps -lzmumps -lmumps_common -lmpiseq -lpord" --with-pic

Note

--prefix correspond au répertoire ou seront installé les executables à la dernière commande make install.

avant de lancer la compilation en utilisant les 16 threads demandés:

make -j 16

et de finir avec l'installation des executables:

make install

Utilisation

A l'ouverture d'une nouvelle session, il sera nécessaire de refixer des variables d'environnement:

export BLAS_DIR=$(spack location -i openblas@0.3.26/dc6bru2)
export MUMPS_DIR=$(spack location -i mumps@5.7.3)

et de spécifier l'emplacement des librairies nécessaires à la bonne execution de GetFEM:

export LD_LIBRARY_PATH=$MUMPS_DIR/lib:$BLAS_DIR/lib:$LD_LIBRARY_PATH

Vous pouvez désormais utiliser les executables dans /<scratch/local>/<username>/getfem