运行通过消息进行通信的 MPI 进程

问题描述

我想启动一个单一进程,作为其他进程发送内容的消费者。所以,我写了这个虚拟代码来测试一下。每次我通过 mpirun -n 4 python3 -u -m mpi4py.futures test.py 运行此代码时,它都会给我以下输出<mpi4py.futures.pool.MPIPoolExecutor object at 0x110deee50> 然后退出。我错过了什么?

from mpi4py.futures import MPIPoolExecutor
from mpi4py import MPI
import numpy as np


def func(dummy):
    MPI.Comm.send(np.array([1]),1)

def reciver(itera,dummy):
    for i in range(itera):
        data = MPI.Comm.recv()
        print(data)


if __name__ == '__main__':
    comm = MPI.COMM_WORLD
    with MPIPoolExecutor() as executor:
        itera = 10
        print(executor)
        executor.submit(reciver,(itera,98))
        executor.map(func,[i for i in range(itera)])

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)