如何在单个进程中出错后正确退出MPI应用程序

时间:2015-03-10 20:13:52

标签: c++ error-handling mpi

我正在构建一个基于MPI的C ++库。我想知道如何在单个进程中出错后正确终止应用程序(即所有进程)。假设我们有一个类似的函数:

void SomeFunction()
{
    {do stuff here...}
    if (error)
    {
        {MPI_Calls?}
    }
}

实际上,所有进程几乎同时会调用此函数,但if - 分支通常称为单个进程。 MPI应该调用什么来与其他进程通信,其中一个进程出错并且应该终止应用程序?这可以封装在一个独立的Error类中吗?

1 个答案:

答案 0 :(得分:4)

您应该使用MPI_Abort。它告诉所有进程停止运行;它相当于C中对于MPI的exit命令。