Utiliser MPICH2

Le mésocentre propose l’utilisation de MPICH2 via les modules mpich2 (GCC ou Intel).

Pour exécuter un calcul en MPICH2 il est conseillé de tenir compte des recommandations suivantes :

sort -u ${OAR_NODEFILE} > hosts
mpiexec -launcher ssh -launcher-exec /usr/bin/oarsh -f hosts -iface ib0 -n ${HOSTS} ./app

Ou :

sort -u ${OAR_NODEFILE} > hosts
mpiexec -launcher ssh -launcher-exec /softs/OAR/oarsh_with_ldlibrarypath_mpich.sh -f ${OAR_NODEFILE} -iface ib0 -n ${HOSTS} ./app

Avec ${HOSTS} qui est le nombre de nœuds demandés. Il est possible d’utiliser:

HOSTS=$(wc -l hosts | awk ‘{print $1}’)

MPICH2 ne passant pas directement pas la couche InfiniBand PSM (QLogic), il est conseillé d’utiliser MVAPICH2 ou OpenMPI si votre application le permet. Par contre, MPICH2 est « thread-safe ».

Si vous rencontrez des erreurs à la compilation avec MPICH2, vérifiez que vous utilisez le compilateur dédié au MPI. Dans le cas de Make, CMake… il est conseillé d’exporter CXX=mpic++, FC=mpif90 et CC=mpicc.


Dernière mise à jour : 3 octobre 2014 mesocentre-techn@univ-amu.fr

+33 (0)4 13 94 58 29 / (0)4 13 94 58 27