
On Jun 28, 2006, at 9:29 PM, Dean Michael Berris wrote:
On 6/29/06, Doug Gregor <doug.gregor@gmail.com> wrote:
I am requesting a formal review for a Boost library that provides modern C++ bindings for the Message Passing Interface (MPI).
I've used MPI before, albeit in C, and I have a few questions (before even reading the documentation fully). I am also very excited with the prospect of actually having an MPI bindings implementation for C++ in boost.
Me too.
I see that this requires any one of three MPI implementations -- and there are a lot of differences between these implementations internally and architecturally. There's also the question of compiler compliance, and platform dependence -- although I haven't seen the code yet, my question would be more of pragmatic in the sense that it maintain a common STL-like interface without breaking the distributed/parallel computing frame.
Since the library is based on the published MPI 1.1 standard, there should be minimal portability issues provided you're using a conforming MPI implementation. As a quick check, I just tried it on our Sun-Fire cluster with Sun's HPC MPI and it worked okay. Just had to setup setenv MPICXX /opt/SUNWhpc/bin/mpCC setenv MPIRUN /opt/SUNWhpc/bin/mprun setenv MPIBUILD "<include>/opt/SUNWhpc/include <define>_MPIPP_H" The define is to skip inclusion of the MPI C++ headers. Thanks for the library Doug. I like the looks of your all_reduce, it looks very similar to what we did. -- Noel Belcourt