MPI标准与Map Reduce编程模型的比较



因为我已经学习了各种并行范式标准的基础知识,如编写并行编程的OpenMP、MPI、OpenCL。但我对MapReduce编程模型并没有太多的了解。

众所周知,各种流行的公司都在遵循Map Reduce编程模型来解决他们庞大的数据密集型任务。此外,MPI是为大规模并行机器和工作站集群上的高性能计算而设计的。

所以我的第一个困惑是。。我可以使用Map Reduce模型而不是MPI标准吗?反之亦然?或者取决于应用程序!!

它们之间的确切区别是什么?

Which one is better and when?

您可以将Map Reduce理解为MPI功能的一个子集,因为它有点类似于具有用户定义函数的MPI集体操作。因此,您可以使用MPI而不是Map Reduce,但不能反之亦然,因为在MPI中,您可以描述更多的操作。Map Reduce的主要优势似乎是专注于这个单一的并行概念,从而减少了使用它所需学习的接口。

最新更新