Compilateurs et wrappers mpi
Article mis en ligne le 21 juin 2018
dernière modification le 6 septembre 2018
logo imprimer

Quel compilateur utiliser ?

Pour compiler vos codes, vous pouvez utiliser :

  • les compilateurs Intel : icc, icpc ou ifort
  • les compilateurs gnu : gcc, g++ ou gfortran
  • les compilateurs pgi

Les compilateurs intel ont l’avantage de la performance : surtout en fortran, il est préférable de les utiliser sur Olympe, afin de bénéficier de toutes les ressources des processeurs.

Les compilateurs gnu ont l’avantage de la portabilité : vous les retrouverez sur tous les systèmes gnu/linux, de nombreux codes viennent avec des makefile écrits pour ces compilateurs.

Environnement par défaut OLYMPE

L’environnement par défaut sur OLYMPE est configuré pour utiliser les compilateur Intel/18.2 et la librairie MPI d’intel 18.2

Pour voir les autres environnements (compilateurs, librairies, etc ..) disponibles :

Comment faire pour utiliser tel compilateur avec mpi ?

Les commandes mpiifort, mpiicc, mpif90, mpicc sont des "wrappers". Ces wrappers permettent à la fois de compiler les sources et de faire l’édition des liens pour la librairie MPI sous-jacente.
Ci-dessous un tableau explicitant les compilateurs qui sont utilisés en fonction des différents wrappers, des compilateur et des bibliothèques MPI chargées dans votre environnement.

intelmpi, compilateurs gnu ou intel

compilateur wrapper
Intel fortran mpiifort
Intel C mpiicc
Intel C++ mpiicpc
Gnu Fortran mpif90
Gnu C mpicc
Gnu C++ mpicxx

openmp, compilateurs intel

compilateur wrapper
Intel fortran mpif90
Intel C mpicc
Intel C++ mpicxx
Gnu Fortran pas de wrapper
Gnu C pas de wrapper
Gnu C++ pas de wrapper

openmp, compilateurs gnu

compilateur wrapper
Intel fortran pas de wrapper
Intel C pas de wrapper
Intel C++ pas de wrapper
Gnu Fortran mpif90
Gnu C mpicc
Gnu C++ mpicxx

Derrière l’appel à ces commandes, de nombreux arguments sont cachés. Pour les connaà®tre :




Site réalisé sous SPIP
avec le squelette ESCAL-V3
Version : 3.87.86
Version Escal-V4 disponible pour SPIP3.2 Hébergeur : INP Toulouse