Jean Zay : compilation d'un code parallèle MPI en Fortran, C/C++

L'environnement MPI à utiliser sur Jean Zay est l'environnement Intel.

Les différentes versions de l'environnement MPI Intel disponibles sur Jean Zay sont activables au moyen de la commande “module”. Il faut penser à activer également les compilateurs Intel avant de lancer la compilation.

Exemple de chargement :

$ module avail intel-mpi
------------------------- /gpfslocalsup/pub/module-rh/modulefiles  -------------------------
intel-mpi/16.0.4 intel-mpi/18.0.1 intel-mpi/18.0.5 intel-mpi/19.0.2 intel-mpi/19.0.4
 
$ module load intel-compilers/19.0.4 intel-mpi/19.0.4

Compilation :

La compilation et l'édition de liens d'un programme MPI se fait en utilisant les scripts mpiifort pour un code Fortran, mpiicc pour un code C ou encore mpiicpc pour un code C++ :

$ mpiifort source.f90
 
$ mpiicc source.c
 
$ mpiicpc source.C

les commandes de compilation mpiifort (respectivement mpiicc et mpiicpc) font référence au compilateur Intel ifort (respectivement icc et icpc). Elles incluent automatiquement les chemins du module fortran mpif.h et les bibliothèques nécessaires à MPI.

Remarque :

  • L'exécution d'un programme MPI doit se faire en batch (via la commande srun ou un job Slurm) pour éviter de saturer la frontale.