重构 MPI 代码以从另一个 MPI 代码调用
Refactoring an MPI code to call from another mpi code
我有两个程序Main和Aux,每个程序都使用MPI进行并行处理。我将 Main 保留为主要代码并将 Aux 修改为由 Main 调用的子例程。
当两个代码都启动MPI过程,然后各自有自己的并行结构,导致代码崩溃时,问题就出现了。
关于如何开始解决这个问题有什么建议吗?
PS:连接两个代码时,我决定通过 Main 调用 Aux 而不是 运行 Aux 作为 Main 的可执行文件,以获得更优化和更健壮的设置并避免开销.
PS2:代码Main是用c++写的,代码Aux是用Fortran写的。
不看代码很难确定,但我相信您想使用两个不同的 MPI 通信器,每个程序一个,请参阅 http://mpitutorial.com/tutorials/introduction-to-groups-and-communicators/
我有两个程序Main和Aux,每个程序都使用MPI进行并行处理。我将 Main 保留为主要代码并将 Aux 修改为由 Main 调用的子例程。
当两个代码都启动MPI过程,然后各自有自己的并行结构,导致代码崩溃时,问题就出现了。
关于如何开始解决这个问题有什么建议吗?
PS:连接两个代码时,我决定通过 Main 调用 Aux 而不是 运行 Aux 作为 Main 的可执行文件,以获得更优化和更健壮的设置并避免开销.
PS2:代码Main是用c++写的,代码Aux是用Fortran写的。
不看代码很难确定,但我相信您想使用两个不同的 MPI 通信器,每个程序一个,请参阅 http://mpitutorial.com/tutorials/introduction-to-groups-and-communicators/