Search code examples
c++boostmpimpich

What is the purpose of using the Boost.MPI library?


What is the purpose of using the Boost.MPI library? Does it increase performance? And what is the difference between it and the MPICH library?


Solution

  • Boost.MPI provides

    an alternative C++ interface to MPI that better supports modern C++ development styles, including complete support for user-defined data types and C++ Standard Library types, arbitrary function objects for collective algorithms, and the use of modern C++ library techniques.

    It intends

    to maintain maximal efficiency

    but not to actually improve the performance of MPI; it can't, because it's still tied to existing MPI implementations (though it may implement some high-level patterns in a more efficient way than you would write them, depending on how much of an MPI expert you are). It's mainly more convenient than the regular C API.