MPI_ITHACA
Submitting C MPI Programs to Virginia Tech's ITHACA Cluster


MPI_ITHACA is a directory of C programs which illustrate the use of PBS scripts on Virginia Tech's ITHACA cluster, in order to submit and run C programs that use MPI, the Message Passing Interface.

For C programs, the appropriate compiler is mpicc.

Licensing:

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

Related Data and Programs:

MPI C programs which illustrate the use of the MPI application program interface for carrying out parallel computations in a distributed memory environment.

MPI_INTRODUCTION is a one page introduction to MPI.

MPI_MORE_INFO contains a list of references, web sites, examples and tutorials on MPI.

MPI_STUBS is a C library which contains "stub" versions of MPI routines, allowing a user to compile, load, and possibly run an MPI program on a serial machine.

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

OPEN_MP C programs which illustrate the use of the OpenMP application program interface for carrying out parallel computations in a shared memory environment.

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.

Examples and Tests:

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

HELLO simply prints out "Hello, world!" from each MPI process.

INTERVALS estimates an integral by dividing an interval into subintervals, and having the servant processes estimate the integral over each subinterval.

MATVEC multiplies a matrix times a vector.

MONTE_CARLO computes PI by the Monte Carlo method, testing whether random points in the unit square are in the unit circle.

QUADRATURE estimates an integral.

SEARCH searches a vector for occurrences of a particular value.

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


Last revised on 01 September 2009.