如何使用mpiexec(MPICH2,linux)启动MPI并行作业的所有进程?
-o
会混淆不同流程的输出
PS给一些编辑:谁可能认为MPICH is the name of the library. MPICH2 is a particular version.
。 MPICH2实际上是MPICH2 is an all-new implementation of MPI
,我有时不得不同时使用mpich和mpich2。所以,我们不能用mpich替换mpich2。
答案 0 :(得分:1)
您可能想尝试使用STAT(堆栈跟踪分析工具)。 查看STAT Homepage。 它将为您提供过程行为的高级概述,并且有效 特别是在挂起的过程中。
答案 1 :(得分:1)
为您的程序创建一个包装器,它将由mpiexec
启动。类似的东西:
#!/bin/sh
LOGFILE="strace-$(hostname).$$"
exec strace -o"$LOGFILE" my_mpi_program