要使用mpi4py,标准方法是使用mpiexec
来启动使用多个MPI进程的程序。例如mpiexec -n 4 python3.5 myprog.py
。在
现在,这使得调试变得困难,因为不能直接使用Python解释器加上使用Python解释器的IDE调试器。但是,调试多线程应用程序没有问题。在
所以我的想法是:而不是使用mpiexec来spwan进程,我有一个Python脚本来spwan多个线程,每个线程都充当一个MPI进程,所有这些都是在Python解释器中发生的。所以不需要使用mpiexec
,我可以像调试其他多线程Python程序一样调试我的应用程序。有可能吗?怎么可能?在
(一般来说,我很乐意为mpi4py找到一些很好的示例集合或教程,没有太多可用的。)
你不需要实现任何核心思想。
mpiexec
已经在为您生成进程。假设您使用的是pudb Python调试器,则可以执行以下操作:mpiexec -np 4 xterm -e python2.7 -m pudb.run helloword.py
xterm
的-e
选项指定要执行的程序xterm
。在PS:我还没有用Python3.5进行测试,但是类似的解决方案也可以
相关问题 更多 >
编程相关推荐