【问题标题】:Returned from call to mpiexec从调用 mpiexec 返回
【发布时间】:2013-09-12 02:14:14
【问题描述】:

调用mpiexec时,如果执行成功返回什么?我想使用 mpiexec 返回的任何内容来衡量我获得了多少成功运行的代码。

【问题讨论】:

    标签: mpi


    【解决方案1】:

    mpiexec 返回第一个失败的进程的错误代码,如果所有进程都成功执行,则返回零。来源:http://www.open-mpi.org/doc/v1.4/man1/mpiexec.1.php

    您应该将输出写入文件(例如使用标准输出)。

    【讨论】:

    • 这适用于 Open MPI,但不一定适用于所有 MPI 实现。 MPI 标准没有定义这种行为。真正的答案是没有办法直接从返回码中找出这一点。
    • 确实如此。然而,返回错误代码(因为可以看到mpiexec)作为一个进程本身(谁“碰巧”启动新进程)是很自然的。此外,我假设大多数实现都会遵循一些标准(为什么openMPI 应该使用另一个退出代码)。但你说得对,应该小心。
    • MPI 标准建议高质量的 UNIX 或 POSIX 实现应该将传递给MPI_Abort() 的错误代码作为mpiexec 的返回值传递。 Open MPI 不遵循此建议。
    • mpiexec 在什么意义上没有遵循建议?如果有人使用MPI_Abort(),很明显出了点问题。
    猜你喜欢
    • 2021-11-07
    • 2011-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-07
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多