Elemental has very nice C++ wrappers to MPI features. If C++ is your
thing, you may want to take a look (https://github.com/elemental/Elemental/
)
There are a few other good projects you can find on GitHub that wrap MPI in
modern C++ syntax. None are complete AFAIK but I donât think that matters
to most apps.
There is essentially no advantage to C++ bindings over C ones in C++. The
real benefit would come from integration in the guts, which isnât possible
since MPI libraries are written in C.
Once the networking TS is approved, we may see more interesting things
happen in this space. The OFI group is trying to make the networking TS
better in the direction of HPC features, too.
Jeff
On Mar 29, 2018, at 7:14 AM, Maxime Boissonneault <
Post by Maxime BoissonneaultIf the C++ MPI bindings had been similar to Boost MPI, they would
probably have been adopted more widely and may still be alive.
FYI: the initial C++ bindings that were proposed (by me!) to the MPI Forum
were a full-blown class library called OOMPI (Object Oriented MPI). After
much debate, the MPI Fourm decided (rightfully, IMNSHO) that standardizing
on a class library would basically be a whole new specification -- the C++
behaviors were quite different than the C/Fortran behaviors. Indeed, OOMPI
was not so much *bindings* as they were *new functionality*.
Ultimately, this is why the "minimal" C++ bindings were adopted: they
provided very little additional behavior compared to the C or Fortran
bindings. The idea was that using the few native-language features that
the C++ bindings provided would allow 3rd parties to create more
interesting / useful / C++-natural functionality (such as class libraries).
This obviously didn't happen.
When each of Boost and other C++ MPI applications opted to use the
underlying C bindings, these were nails in the coffin for the MPI C++
bindings. Hence the deprecation in 2009 and the removal in 2012.
--
Jeff Squyres
_______________________________________________
users mailing list
https://lists.open-mpi.org/mailman/listinfo/users
--
Jeff Hammond
***@gmail.com
http://jeffhammond.github.io/