This is the MapReduce-MPI (MR-MPI) library, version 13 April 2009.

MapReduce is the operation popularized by Google for computing on
large distributed data sets.  See the Wikipedia entry on MapReduce for
an overview of what a MapReduce is.

The MR-MPI library is a simple, portable implementation of MapReduce
that runs on any serial desktop machine or large parallel machine
using MPI message passing.

As a user, you write a program which calls the MR-MPI library and you
provide functions that operate on your data such as a map() and a
reduce().  These functions are invoked by the library on single
processors, so that you typically do not need to write any parallel
code to perform a MapReduce.

The library is written in C++ and can be called from C++ or from C or
other hi-level languages such as Fortran or a scripting language.  A
Python wrapper for the library is provided.  If you want to run on a
single processor, a dummy MPI library is provided to link against.  To
perform MapReduces in parallel, you need to link against an installed
MPI library.

The MR-MPI library is licensed under the Berkeley Software Distribution
(BSD) License, which basically means it can be used by anyone for any
purpose.  See the LICENSE file in this directory for details.

The most current version of the library including all bug fixes and
new featues can be downloaded at
www.cs.sandia.gov/~sjplimp/download.html.

The author of the library is Steve Plimpton at Sandia National
Laboratories who can be contacted at sjplimp at sandia.gov.  Or see
www.cs.sandia.gov/~sjplimp.

This MR-MPI distribution includes the following files and directories:

README			   this file
LICENSE			   the BSD License
doc			   documentation
examples		   simple example MapReduce programs
mpistubs		   dummy MPI library
python			   Python wrapper files
src			   library source files
user			   MapReduce programs

Point your browser at doc/mapreduce.html to get started.
