10.1.2. Design

Up: C++ Next: C++ Classes for MPI Previous: Overview

The C++ language interface for MPI is designed according to the following criteria:

    1. The C++ language interface consists of a small set of classes with a lightweight functional interface to MPI. The classes are based upon the fundamental MPI object types (e.g., communicator, group, etc.).

    2. The MPI C++ language bindings provide a semantically correct interface to MPI.

    3. To the greatest extent possible, the C++ bindings for MPI functions are member functions of MPI classes.


Providing a lightweight set of MPI objects that correspond to the basic MPI types is the best fit to MPI's implicit object-based design; methods can be supplied for these objects to realize MPI functionality. The existing C bindings can be used in C++ programs, but much of the expressive power of the C++ language is forfeited. On the other hand, while a comprehensive class library would make user programming more elegant, such a library it is not suitable as a language binding for MPI since a binding must provide a direct and unambiguous mapping to the specified functionality of MPI. ( End of rationale.)

Up: C++ Next: C++ Classes for MPI Previous: Overview

Return to MPI-2 Standard Index
Return to MPI 1.1 Standard Index
Return to MPI Forum Home Page

MPI-2.0 of July 18, 1997
HTML Generated on September 10, 2001