ZeroMQ 与 OpenMPI

Pau*_*aul 3 comparison openmpi zeromq

有人可以提供更好的方法以及适用于哪些情况吗?

我对 ZeroMQ 有一些经验(不多),但对 OpenMPI 没有。

我知道两者都是消息传递的框架。这两个框架的主要区别是什么?

baz*_*zza 5

ZMQ 是一个与传输无关的通用消息传递系统,具有一些有用的模式,如发布/订阅等。它只是在网络/程序/线程中移动字节,并且完全取决于您这些字节的含义。许多人在 ZMQ 之上使用像 Google Protocol Buffers 这样的序列化技术来“让这些字节在任何地方都有意义”。

OpenMPI 非常适合分布式数学应用程序,并且经常在超级计算机社区中使用,以使数据分布在大型集群中的节点上。据我所知,它会在传输数据时执行诸如矩阵转换之类的操作,需要一个程序将其数据描述给 OpenMPI,以便可以完成转换。此外,似乎还非常强调 OpenMPI 节点是单个进程 - 它并不是真正用于线程间通信。此外,它还接管了您运行和构建代码的方式。