MPI_STUBS
Dummy MPI Library


MPI_STUBS is a C library which implements "stub" versions of the MPI routines.

MPI_STUBS is intended to include stubs for the most commonly called MPI routines. Most of the stub routines don't do anything. In a few cases, where it makes sense, they do some simple action or return a value that is appropriate for the serial processing case.

MPI_STUBS can be used as a convenience, when a real MPI implementation is not available, and the user simply wants to test-compile a code. It may also be useful in those occasions when a code has been so carefully written that it will still execute correctly on a single processor.

MPI_STUBS is based on a similar package supplied as part of the LAMMPS program, which allow that program to be compiled, linked and run on a single processor machine, although it is normally intended for parallel execution.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

MPI_STUBS is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version.

Related Data and Programs:

HELLO_MPI, a C program which prints out "Hello, world!" using the MPI parallel programming environment.

MOAB, examples which illustrate the use of the MOAB job scheduler for a computer cluster.

MPI, a library of message passing routines which enables parallel processing on a variety of machine architectures, and with a varying number of processors.

MULTITASK_MPI, a C program which demonstrates how to "multitask", that is, to execute several unrelated and distinct tasks simultaneously, using MPI for parallel execution.

RANDOM_MPI, a C program which demonstrates one way to generate the same sequence of random numbers for both sequential execution and parallel execution under MPI.

Reference:

  1. William Gropp, Ewing Lusk, Anthony Skjellum,
    Using MPI: Portable Parallel Programming with the Message-Passing Interface,
    Second Edition,
    MIT Press, 1999,
    ISBN: 0262571323,
    LC: QA76.642.G76.

Source Code:

Examples and Tests:

BUFFON_LAPLACE demonstrates how parallel Monte Carlo processes can set up distinct random number streams.

QUADRATURE is a program that estimates an integral using the random sampling.

List of Routines:

You can go up one level to the C source codes.


Last revised on 22 March 2011.