Copyright 1998-1999, University of Notre Dame.
Authors: Brian W. Barrett, Arun F. Rodrigues, Jeffrey M. Squyres,
	 and Andrew Lumsdaine

This file is part of XMPI

You should have received a copy of the License Agreement for XMPI 
along with the software; see the file LICENSE.  If not, contact 
Office of Research, University of Notre Dame, Notre Dame, IN 46556.

Permission to modify the code and to distribute modified code is
granted, provided the text of this NOTICE is retained, a notice that
the code was modified is included with the above COPYRIGHT NOTICE and
with the COPYRIGHT NOTICE in the LICENSE file, and that the LICENSE
file is distributed with the modified code.

LICENSOR MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED.
By way of example, but not limitation, Licensor MAKES NO
REPRESENTATIONS OR WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY
PARTICULAR PURPOSE OR THAT THE USE OF THE LICENSED SOFTWARE COMPONENTS
OR DOCUMENTATION WILL NOT INFRINGE ANY PATENTS, COPYRIGHTS, TRADEMARKS
OR OTHER RIGHTS.

Additional copyrights may follow.


This is the source for XMPI 2.2, a graphical user interface for 
MPI program development.

The contents of directories at this level are:

Bitmaps		-- X11 bitmaps used by XMPI
Config		-- source build configuration files for supported machines
Pixmaps		-- XPM format pixmaps used by XMPI
app-defaults	-- resource files for supported machines
libxmpi		-- modules to build libxmpi for the LAM MPI implementation


Please refer to the file INSTALL for a list of supported
platforms and for installation instructions.

-=-

XMPI can acquire and display extensive detail on an application's MPI
communication, including the following:

	o process synchronization status: running, system or blocked
	o message queue contents
	o source, destination, root ranks
	o MPI function name
	o communicator
	o datatype
	o message count
	o tag

The above information is acquired from on-demand snapshots of
application status using debugging hooks in the MPI implementation or
from a trace log of communication activity.

-=-

XMPI is a great tool for teaching MPI in a hands-on setting.  Students
run example code and can see and verify each MPI operation.  XMPI has an
application "wizard" to help assemble programs and assign processors to
MIMD and SPMD applications.  Furthermore, it is not tedious to generate,
acquire and display information.  A typical development cycle begins by
assembling an application and continues in the following manner.

	o press the snapshot button to see what's going on now
	o popup focus windows for a few interesting processes
	o press the snapshot button a few (or a few dozen!) more times
	o see the application completed, hung, deadlocked, etc...
	o press the trace button once and the timeline window is displayed
	o review the previous execution with trace log snapshots
	o make application changes and press the rerun button

No recompiles or special libraries are required to snapshot the
application or obtain a trace log.

-=-

A longer, illustrated description of the XMPI 2.2 can be found at

     http://www.mpi.nd.edu/lam/software/xmpi/

-=-

XMPI 2.2 can be obtained from

     http://www.mpi.nd.edu/lam/download/

 XMPI 2.2 is an X11/Motif application that requires either Motif or
Lesstif libraries. 
