mpi4py:abort()并引发RuntimeError()

时间:2017-05-15 15:15:09

标签: python error-handling mpi abort mpi4py

有没有办法一起使用mpi4py.abort()和python raise RuntimeError()(或任何其他类型的错误)?也许

errstr = 'ARRRGH!!!'
raise RuntimeError(errstr)
mpicomm.abort()

mpicomm.abort()
errstr = 'ARRRGH!!!'
raise RuntimeError(errstr)

或其他一些变种?

1 个答案:

答案 0 :(得分:1)

鉴于MPI_Abort基本上终止了应用程序中的所有进程,因此无法将其与python中的常规异常处理相结合。请注意,允许MPI实现中止所有进程,而不仅仅是mpicomm中的进程。

唯一有用的想法是,在某些本地python代码中引发RuntimeError,并在异常处理程序中调用mpicomm.abort()