【发布时间】:2016-03-22 16:25:06
【问题描述】:
我目前正在实施基于消息分配的实施,以将计算密集型工作卸载到另一个配备 GPU 的节点。 所以我得到了一个主/从模型,主机生成数据并希望在从属(+附加的 GPU)上计算它。 到目前为止,我已经使用 OpenMPI 实现了这一点,我在这两个节点上启动我的程序并通过消息传递发送数据。 我现在要做的是更改从属设备的实现,使其永久运行并等待数据,直到某些主机连接到它。该主机可能是 Windows 或 linux 主机。 所以我不想用 mpirun 启动主从,而只是正常的主机,并希望它在运行时连接到我的从机。 另一个要求是我使用在编译时我不知道大小的模板类。我开始创建一个简单的 TCP 协议,它只是一个带有消息标签(无符号短)和有效负载/数据(作为联合)的结构。这是我无法在联合中使用模板类的问题(这是有道理的)。
所以,为了解决我的问题,我正在寻找一个具有最佳 MPI 类语法的消息传递高级库。有没有办法做到这一点? 喜欢使用 MPI 而不是 mpirun,而是在运行时连接到其他进程。
【问题讨论】:
-
zeromq 浮现在脑海中
-
0mq 也许? en.wikipedia.org/wiki/ZeroMQ
-
@David, Severin:zeromq 的创建者发布了它的替代品 nanomsg
-
@BenVoigt 谢谢,很高兴知道
标签: c++ mpi message-passing