mpi4py:abort()并引发RuntimeError()

问题描述:

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

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

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

或一些其他的变种?

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

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