Dummy MPI Library

MPI_STUBS is a FORTRAN90 library which provides "stub" versions of some 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.


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


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

Related Data and Programs:

HEAT_MPI, a FORTRAN90 program which solves the 1D Time Dependent Heat Equation using MPI.

HELLO_MPI, a FORTRAN90 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, FORTRAN90 programs which illustrate the use of MPI for parallel processing.

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

QUAD_MPI, a FORTRAN90 program which approximates an integral using a quadrature rule, and carries out the computation in parallel using MPI.

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

SATISFY_MPI, a FORTRAN90 program which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem, using MPI to carry out the calculation in parallel.


  1. William Gropp, Steven Huss-Lederman, Andrew Lumsdaine, Ewing Lusk, Bill Nitzberg, William Saphir, Marc Snir,
    MPI: The Complete Reference,
    Volume II: The MPI-2 Extensions,
    Second Edition,
    MIT Press, 1998,
    ISBN13: 978-0-262-57123-4,
    LC: QA76.642.M65.

Source Code:

Examples and Tests:

BUFFON_LAPLACE is an "embarrassingly parallel" Monte Carlo simulation of the Buffon-Laplace needle dropping process.

HELLO is a simple program that says "Hello, world!".

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

List of Routines:

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

Last revised on 21 May 2008.