假设主进程 A 产生一组工作进程 B,每个工作进程 B 都产生自己独特的工作进程 C,我如何打开 C 到 A 之间的通信器?
我正在尝试使用 mpi4py 在彼此分开编写的几段代码之间创建一个循环,同时最大限度地减少对代码的修改。因此,MPI 代码的一般框架将是:
- Master A(一个进程)派生出 8 个 worker B 的进程,并向它们分散一个数组。
- 每个 B 进程生成一个工作 C,对数组进行一些操作,并将其广播给自己的工作。
- 每个工人 C 以自己的方式操作数组,然后(理想情况下)主人 A 从 C 的每个数组中收集一个数组。
我知道这将涉及在现有进程之间打开一个互通器,可能使用组通信。实现这一目标的最佳方法是什么?
谢谢你。