MPI有什么特别之处让它更喜欢服务器/客户端模型?

时间:2013-08-12 04:49:49

标签: parallel-processing mpi

我正试图围绕MPI。它似乎是并行科学计算的事实上的模型。但是,我看不出是什么让它如此特别,以至于它比使用JSON或xml的服务器/客户端模型更受欢迎?

1 个答案:

答案 0 :(得分:8)

实际上,MPI是(分布式存储器)并行科学计算的事实上的标准。人们只能推测为什么会这样。原因如下:

  • MPI是API标准,它没有指定任何有线协议,而是将任何此类低级细节留给实现。 (实际上,假设MPI实现可以使用JSON或XML并符合标准,尽管我相信当前的实际实现与我所知的最有效的二进制协议相比,性能会很糟糕。)这允许实现在各种网络硬件架构上尽可能高效地实现MPI的自由,为应用程序提供“性能可移植性”。这很重要,因为大型应用的寿命往往比典型超级计算机的寿命长5年。

  • MPI不是客户端 - 服务器模型,尽管它足够灵活,允许用户在用户希望的情况下实现这样的通信方案。客户端 - 服务器模型往往受到可扩展性限制的困扰,而大规模MPI应用程序倾向于使用对称处理模型,其中所有等级(几乎)相等。

  • MPI提供了科学应用中使用的各种通信模式。例如。集合操作,如广播,减少,分散/聚集等。再次,由于MPI是API标准并且没有指定有线协议,因此MPI实现有很大的自由度以有效的方式为任何特定的网络硬件实现这些操作和拓扑。