This directory contains a number of example programs written using
OOMPI.  This file contains a summary of each of the programs.  Please
note that these programs are not meant to be useful, or even
interesting.  They are simply meant to demonstrate some of the
features of OOMPI.  The makefile in this directory will compile all of
the example programs.

Note on I/O: All of the programs have output.  Were possible, only the
console process (process 0) attempts to print out something (using
cout or printf).  However, there are some example programs in which
all processes attemp to display some results.  Depending on your
implementation of MPI, you may or may not be able to see these
results.


1. hello_world.cc : 
	OOMPI's version of the famous program.  Can be run with any
	number of nodes.

2. ring1.cc : 
	Passes a message aroung a logical ring of processes.  Can be
	run with any number of nodes.

3. ring2.cc : 
	Like ring1.cc, except that it uses the stream interface for
	message passing and explicit OOMPI_Ports.  Can be run with any
	number of nodes.

4. user_datatypes.cc 
	This example shows how to create and use a user-defined
	datatype.  Can be run with any number of nodes.

5. packed.cc : 
	An examples using the streams interface for packing.  Can be
	run with any number of nodes, but only the first and the last
	are used.

6. pi.cc :
  	Calculating PI (taken from _Using MPI_ by Gropp, Lusk and
	Skjellum).  Can be run with any number of nodes.

7. user_bcast.cc :
  	An example on how to immitate the broadcast functionality from
        sends and receives.  (This is really un-useful as a program,
	but it does demonstrates non-blocking communication).  Can be
	run with any number of nodes.

8. topology.cc :
	A simple program that creates and uses both cartesian and graph
	communicators.  This specific example must be run with at
	least four nodes; if run with more than four, the second
	example only uses the first four.
