3
我正在将一个mpi通信器从python传递给C.我选择使用boost的mpi通信器,因为mpi4py似乎没有良好的C支持。检查出来:“致命的Python错误:PyThreadState_Get:没有当前线程”是什么意思?
try: from boost.mpi import world
except ImportError: from mpi import world
err = run_with_mpi(infile, world, stdout, stderr, exc)
在安装boost.mpi的系统上,这不会产生错误。但是,boost.mpi无法在mac上安装。我使用homebrew的boost155公式安装了boost的mpi.so模块,然后将.so文件添加到pythonpath中。
一般来说,Fatal Python error: PyThreadState_Get: no current thread
是什么意思?这条消息会给像我这样的开发者提供什么线索?
完整的错误消息:
Fatal Python error: PyThreadState_Get: no current thread
[kilojoules-20160s:64471] *** Process received signal ***
[kilojoules-20160s:64471] Signal: Abort trap: 6 (6)
[kilojoules-20160s:64471] Signal code: (0)
[kilojoules-20160s:64471] *** End of error message ***