Python:OpenMPI 与。兔MQ

标签 python messaging mpi rabbitmq amqp

假设有人有兴趣编写一个 python 应用程序,其中应该有不同进程之间的通信。通信将通过发送 strings 和/或 numpy 数组来完成。

选择 OpenMPIRabbitMQ 之类的工具相比,有哪些考虑因素?

最佳答案

这个问题没有单一的正确答案。这一切都取决于大量不同的因素。例如:

  1. 你有什么样的沟通方式?您发送的是大数据包还是小数据包,您需要好的带宽还是低延迟?
  2. 您需要什么样的交付保证?
  3. OpenMPI 可以立即将消息仅传递给正在运行的进程,而不同的 MQ 解决方案可以对消息进行排队并允许花哨的生产者-消费者配置。
  4. 你有什么样的网络?如果你在本地主机上运行,​​像 ZeroMQ 这样的东西可能是最快的。如果您在一组主机上运行,​​则取决于可用的互连。例如。 OpenMPI 可以利用 infiniband/mirynet 链接。
  5. 你在做什么处理?使用 MPI,所有进程通常同时启动,同时进行处理和终止。

关于Python:OpenMPI 与。兔MQ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6756630/

相关文章:

python - 比较 pandas 中的两列以使它们匹配

python - 如何将数据框中的列中的数据设为 "group"

python - 根据可迭代对象中的索引列表访问项目

messaging - ZeroMQ 准备好用于生产了吗?

C++ MPI 创建和发送具有字段 char[16] 和整数的结构数组

python - scikit 中大型数据集的 ICA 在线学习

windows - 没有代理的本地机器上的多对多消息传递

ios - 我们可以使用 CarPlay 撰写/接收音频信息吗?

c - MPI:取消非阻塞发送

process - 如何在 OpenMPI 中用 --map-by 替换 --cpus-per-proc