使用Boost.MPI库的目的是什么?

时间:2012-03-24 10:16:02

标签: c++ boost mpi mpich

使用Boost.MPI库的目的是什么?它会提高性能吗?它与MPICH库有什么区别?

3 个答案:

答案 0 :(得分:8)

Boost.MPI provides

  

MPI的另一种C ++接口,它更好地支持现代C ++开发风格,包括完全支持用户定义的数据类型和C ++标准库类型,集合算法的任意函数对象,以及现代C ++库技术的使用。

它打算

  

保持最高效率

但不是实际改善 MPI的表现;它不能,因为它仍然与现有的MPI实现相关联(尽管它可能以比编写它们更有效的方式实现某些高级模式,具体取决于您是多少MPI专家)。它比常规的C API更方便。

答案 1 :(得分:7)

它基本上是一个“现代”的c ++接口,用于实现相同的旧C API,比如MPICH。由于它使用相同的功能,因此无法提高性能,但可以通过简化实际实现来帮助实现。

答案 2 :(得分:4)

自2.2版以来,MPI中的C ++绑定已弃用:http://www.mpi-forum.org/docs/mpi22-report/node328.htm

Boost.MPI基于C MPI API,因此对于那些想要C ++ API的人来说是个好消息:https://github.com/mpi-forum/mpi-forum-historic/issues/150