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()
。