Skip to main content

more options


What MPI Offers

MPI offers standardization, portability, performance, functionality, and several high quality implementations.

Standardization

MPI is standardized on many levels. Both syntax and the functional behavior of MPI calls is standardized across architectures.

Portability

In the rapidly changing environment of high performance computing and communication technology, portability is extremely important.

With MPI, you can write portable programs that still take advantage of the specifications of the hardware and software provided by vendors. This is mostly taken care of by simply using MPI calls, because the implementors have tuned these calls to the underlying hardware and software environment.

Performance

A number of environments, including PVM, Express, and P4, have attempted to provide a standardized parallel computing environment. However, none of these attempts has shown the high performance of MPI. They are not available on our system.

Richness

MPI has more than one quality implementation. These implementations provide asynchronous communication, efficient message buffer management, efficient groups, and rich functionality. MPI includes a large set of collective communication operations, virtual topologies, and different communication modes, and MPI supports libraries and heterogeneous networks as well.

Implementations currently available include

MPI/Pro: Verari Systems (formerly MPI Software Technology, Inc.) implementation
IBM MPI: IBM product implementation for the SP and RS/6000 workstation clusters
MPICH: Argonne National Lab and Mississippi State University implementation
UNIFY: Mississippi State University implementation
CHIMP: Edinburgh Parallel Computing Centre implementation
LAM: Ohio Supercomputer Center implementation
MPI is available on many massively parallel systems.

Please see the software page for up to date information on the version of MPI installed on the various machines in our cluster.

MPI offers standardization, portability, performance, functionality, and several high quality implementations.

Standardization

MPI is standardized on many levels. For example, since the syntax is standardized, you can rely on your MPI code to execute under any MPI implementation running on your architecture. Since the functional behavior of MPI calls is standardized too, you don't have to worry about which implementation of MPI is currently on your machine; your MPI calls should behave the same regardless of the implementation. Performance, however, will vary slightly among different implementations.

Portability

In the rapidly changing environment of high performance computing and communication technology, portability is extremely important. No one wants to develop a program that can be run on only one machine, or only poorly on others. All massively parallel processing (MPP) systems provide some sort of message passing library specific to their hardware. These provide great performance, but an application code written specifically for one platform cannot be easily ported to another.

With MPI, you can write portable programs that still take advantage of the specifications of the hardware and software provided by vendors. This is mostly taken care of by simply using MPI calls, because the implementors have tuned these calls to the underlying hardware and software environment.

Performance

A number of environments, including PVM, Express, and P4, have attempted to provide a standardized parallel computing environment. However, none of these attempts has shown the high performance of MPI. They are not available on our system.

Richness

MPI has more than one quality implementation. These implementations provide asynchronous communication, efficient message buffer management, efficient groups, and rich functionality. MPI includes a large set of collective communication operations, virtual topologies, and different communication modes, and MPI supports libraries and heterogeneous networks as well.

Implementations currently available include

MPI/Pro: Verari Systems (formerly MPI Software Technology, Inc.) implementation
IBM MPI: IBM product implementation for the SP and RS/6000 workstation clusters
MPICH: Argonne National Lab and Mississippi State University implementation
UNIFY: Mississippi State University implementation
CHIMP: Edinburgh Parallel Computing Centre implementation
LAM: Ohio Supercomputer Center implementation
MPI is available on many massively parallel systems.

Please see the software page for up to date information on the version of MPI installed on the various machines in our cluster.