OpenMPI (parallélisation)

Le PSMN propose de nombreuses versions d'OpenMPI, buildées avec les compilateurs disponibles. Toutes les versions ne sont pas optimisées pour un type de processeur en particulier. Les options de configuration sont indiquées quand elles sont disponibles.

UNDER CONSTRUCTION

Hostfile

Il y a deux façons d'écrire le hostfile :

  • OpenMPI version 1.x

Un hostname par core, par ligne (exemple pour 8 cores, sur deux nodes)

c8220node30
c8220node30
c8220node30
c8220node30
c8220node31
c8220node31
c8220node31
c8220node31
  • OpenMPI version 2.x et sup.

Le hostfile version 1 est toujours valable, mais une nouvelle syntaxe fait son apparition : Un hostname par ligne + son nombre de cores (exemple pour 8 cores, sur deux nodes)

c8220node30 slots=4
c8220node31 slots=4

GridEngine, lorsque le ParallelEnvironment est défini (-pe PE_ENV $SLOTS), génère un fichier ${TMPDIR}/machines selon la syntaxe version 1.

OpenMPI + GCC

OpenMPI 1.10.4

avec GCC 4.9.4

OpenMPI 2.0.2

Récapitulatif :

Compilateur version commande(s) chemin d'accès OS
gcc 6.3.0 mpicc, mpic++, mpicxx, mpif77, mpif90, mpifort /usr/bin Debian 9
modulefile : aucun
mpicc -showme
mpifort -showme

OpenMPI 2.1.1

OpenMPI 3.0.0

gcc 6.4

gcc 7.2

L'option Shared Memory (sm) a changé avec OpenMPI 3. Utilisez vader à la place : -mca btl vader,openib,self

OpenMPI + Intel

OpenMPI + PGI

Références

MPI

documentation/tools/compilo/openmpi.txt · Dernière modification: 2020/08/25 17:58 (modification externe)