US $ p $垫VS MPI VS zeromq? [英] Spread vs MPI vs zeromq?

查看:267
本文介绍了US $ p $垫VS MPI VS zeromq?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在回答中的一个来<一href=\"http://stackoverflow.com/questions/31572/broadcast-like-udp-with-the-reliability-of-tcp#31629\">Broadcast如UDP和TCP 的可靠性,用户提到 US $ p $垫消息API。我还隔着一个叫ØMQ运行。我也有一些熟悉 MPI

In one of the answers to Broadcast like UDP with the Reliability of TCP, a user mentions the Spread messaging API. I've also run across one called ØMQ. I also have some familiarity with MPI.

所以,我的主要问题是:为什么我会选择一个比其他?更具体地讲,我为什么会选择将S $ P $垫或ØMQ时有要过MPI成熟的实现?

So, my main question is: why would I choose one over the other? More specifically, why would I choose to use Spread or ØMQ when there are mature implementations of MPI to be had?

推荐答案

MPI是deisgned紧耦合计算集群提供快速,可靠的网络。 US $ p $垫和ØMQ是专为大型分布式系统。如果你正在设计一个并行科学应用,顺应MPI,但如果你正在设计一个持续的分布式系统,需要有弹性故障和网络不稳定,使用别人的一个。

MPI was deisgned tightly-coupled compute clusters with fast, reliable networks. Spread and ØMQ are designed for large distributed systems. If you're designing a parallel scientific application, go with MPI, but if you are designing a persistent distributed system that needs to be resilient to faults and network instability, use one of the others.

MPI具有容错能力的设施非常有限;在大多数实现默认的错误处理的行为是一个全系统的失败。此外,MPI的语义要求所有发送的消息最终被消耗掉。这使得一个很大的意义集群上模拟,而不是为分布式应用程序。

MPI has very limited facilities for fault tolerance; the default error handling behavior in most implementations is a system-wide fail. Also, the semantics of MPI require that all messages sent eventually be consumed. This makes a lot of sense for simulations on a cluster, but not for a distributed application.

这篇关于US $ p $垫VS MPI VS zeromq?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆