0

这类似于互联网上的一些问题,但这段代码似乎工作了一段时间,而不是立即返回错误,这对我来说可能不仅仅是主机文件错误?

我正在运行一个生成多个 MPI 进程的代码,然后每个 MPI 进程创建一个循环,在循环中它们使用 bcast 和 scatter 发送一些数据,然后从这些进程中收集数据。这将运行算法并保存数据。然后它与生成的通信断开连接,并在下一个循环中创建另一组生成。这工作了几分钟,然后在大约 300 个文件之后,它会吐出这个:

[T7810:10898] [[50329,0],0] ORTE_ERROR_LOG: Not found in file ../../../../../orte/mca/plm/base/plm_base_launch_support.c at line 758
--------------------------------------------------------------------------
mpirun was unable to start the specified application as it encountered an error.
More information may be available above.

我在本地机器(单节点)上对此进行测试,因此最终部署将有多个节点,每个节点在该节点内产生自己的 mpi 进程。我试图弄清楚这是否是在我的本地机器上测试多个节点的问题,并且可以在 HPC 上正常工作,或者是一个更严重的错误。

我该如何调试呢?有没有办法打印出 MPI 在此期间尝试执行的操作或监控 MPI,例如详细模式?

4

1 回答 1

0

由于 MPI4PY 非常接近 MPI(逻辑上,如果不是在代码行方面),调试它的一种方法是编写程序的 C 版本并查看问题是否仍然存在。当您向 OpenMPI 报告此错误时,他们无论如何都会想要一个小的 c 测试用例。

于 2015-10-08T15:41:41.467 回答