Phiên bản 3.0 của tiêu chuẩn MPI đã chính thức xóa giao diện C ++ (trước đây không dùng nữa). Mặc dù các triển khai vẫn có thể hỗ trợ nó, các tính năng mới trong MPI-3 không có giao diện C ++ được xác định trong tiêu chuẩn MPI. Xem http://bloss.cisco.com/performance/the-mpi-c-bindings-what-happened-and-why/ để biết thêm thông tin.
Động lực để loại bỏ giao diện C ++ khỏi MPI là nó không có giá trị đáng kể so với giao diện C. Có rất ít sự khác biệt ngoài "s / _ / :: / g" và nhiều tính năng mà người dùng C ++ quen thuộc không được sử dụng (ví dụ: xác định loại tự động thông qua các mẫu).
Là người tham gia Diễn đàn MPI và làm việc với một số dự án C ++ đã triển khai giao diện C ++ của riêng họ cho các chức năng MPI C, tôi muốn biết các tính năng mong muốn của giao diện C ++ đối với MPI là gì. Mặc dù tôi cam kết không có gì, tôi sẽ thấy thú vị khi thấy việc triển khai giao diện MPI C ++ độc lập đáp ứng nhu cầu của nhiều người dùng.
Và vâng, tôi quen thuộc với Boost :: MPI ( http://www.boost.org/doc/libs/1_54_0/doc/html/mpi.html ) nhưng nó chỉ hỗ trợ các tính năng MPI-1 và mô hình tuần tự hóa sẽ là cực kỳ khó hỗ trợ cho RMA.
Một giao diện C ++ cho MPI mà tôi thích là của Elemental ( https://github.com/poulson/Euityal/blob/master/src/core/imports/mpi.cpp ) để có lẽ mọi người có thể cung cấp một số pro và con wrt tiếp cận. Cụ thể, tôi nghĩ MpiMap giải quyết một vấn đề thiết yếu.