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.
Last updated : 3 octobre 2014