"MapReduce-MPI WWW Site"_mws - "MapReduce-MPI Documentation"_md :c

:link(mws,http://www.cs.sandia.gov/~sjplimp/mapreduce.html)
:link(md,Manual.html)

:line

Getting Started :h3

Once you have
"downloaded"_http://www.sandia.gov/~sjplimp/download.html the
MapReduce MPI (MR-MPI) library, you should have the tarball
mapreduce.tar.gz on your machine.  Unpack it with the following
commands:

gunzip mapreduce.tar.gz
tar xvf mapreduce.tar :pre

which should create a mapreduce directory containing the following:

README
LICENSE
doc
examples
mpistubs
python
src
user :ul

The doc directory contains this documentation.  The examples directory
contains a few simple MapReduce programs which call the MR-MPI
library.  These are documented by a README file in that directory and
are discussed below.  The mpistubs directory contains a dummy MPI
library which can be used to build a MapReduce program on a serial
machine.  The python contains the Python wrapper files needed to call
the MR-MPI library from Python.  The src directory contains the files
that comprise the MR-MPI library.  The user directory contains
user-contributed MapReduce programs.  See the README in that directory
for further details.

To build the library for use by a C++ or C program, go to the src
directory and type

make -f Makefile.foo :pre

where you should create and use a Makefile.foo appropriate for your
machine, using one of the provided Makefiles as a template.  Note that
Makefile.serial builds the library for a serial machine, using the
dummy MPI library in mpistubs.  Other Makefiles build it for parallel
execution using a MPI library installed on your machine.  You may need
to edit one of the Makefiles to be compatible with your compilers and
MPI installation.  If you use the dummy MPI library, you will need to
build it first, by typing "make" from within mpistubs.  Again, you may
need to edit mpistubs/Makefile for your machine.

If you successfully build the MR-MPI library, you should produce the
file "libmrmpi.a" which can be linked by other programs.  As discussed
below, both a C++ and C interface are part of the library, so the
library should be usable from any hi-level language.

To use the MR-MPI library from Python, you don't need to build it from
the src directory.  Instead, you build it as a dynamic library from
the python directory.  Instructions are given below in the "Python
interface"_interface_python.html section.

The MapReduce programs in the examples directory can be built by
typing

make -f Makefile.foo :pre

from within the examples directory.  Again, one of the provided
Makefiles may need to be modified for your platform.  Some of the
example programs are provided as a C++ program, a C program, and as a
Python script.
