上一篇我们用mpi实现了简单的并行矩阵乘法算法.
在这个算法中,有一个缺陷,进程数必须事先确定好.
没错,至今为止我们写过的mpi代码都是事先规定好进程数的.
那么,能不能动态创建进程?能不能在运行时,根据需要创建不同数目的进程?
答案当然是可以的!用Spawn函数就可以!
代码:
test.py(master)
test2.py(slave)
代码解释:
我们第一次出现了两份代码!
test.py是父进程的代码,而test2.py是子进程的代码.
当然,你可以让父进程和子进程使用同一份代码,只是你要像之前一样小心翼翼地处理不同角色的进程的行为.
test.py的第七行是我们今天学习的重点,这里使用了我们今天要重点学习的Spawn函数.
我们发现,Spawn方法的对象居然是MP