en utilisant strace mpiexec
Question
Comment puis-je STRACE tous les processus de travail parallèle MPI, a commencé avec mpiexec (MPICH2, linux)?
-o
sorties volonté du mess des différents processus
PS Pour certains éditeurs: qui peuvent penser que MPICH is the name of the library. MPICH2 is a particular version.
. MPICH2 est en fait MPICH2 is an all-new implementation of MPI
et j'avais parfois utilisé à la fois mpich et mpich2. Donc, nous ne pouvons pas remplacer mpich2 avec mpich.
La solution
Créer une enveloppe autour de votre programme, qui sera lancé par mpiexec
. Quelque chose comme:
#!/bin/sh
LOGFILE="strace-$(hostname).$$"
exec strace -o"$LOGFILE" my_mpi_program
Autres conseils
Vous pouvez essayer STAT (Stack Trace Analysis Tool). Consultez le STAT Page d'accueil . Il vous donnera un aperçu de haut niveau de votre comportement de processus, et les travaux particulièrement bien dans le cas d'un processus bloqué.