User's Guide for mpich, a Portable Implementation of MPI

William Gropp and Ewing Lusk

This User's Guide corresponds to Version 1.1.1 of mpich. It was processed by LaTeX on Mon Jul 13 14:05:40 1998.

MPI (Message-Passing Interface) is a standard specification for message-passing libraries. MPICH is a portable implementation of the full MPI specification for a wide variety of parallel and distributed computing environments. This paper describes how to build and run MPI programs using the MPICH implementation of MPI. There are a number of major features in Release 1.1.1 of MPICH :

* The Romio subsystem implements a large part of the MPI-2 standard for parallel I/O. For details on what types of file systems runs on and current limitations, see the Romio documentation in romio/doc.
* The MPI-2 standard C++ bindings are available for the MPI-1 functions.
* A new device, Globus, is available. See Section Computational grids: the  globus device .
* A new program visualization program, called Jumpshot, is available as an alternative to the upshot and nupshot programs.

Contents

Contents

  • Introduction
  • Linking and running programs
  • Scripts to Compile and Link Applications
  • Running with mpirun
  • More detailed control
  • Special features of different systems
  • Workstation clusters
  • Checking your machines list
  • Using the Secure Shell
  • Using the Secure Server
  • Heterogeneous networks and the ch_p4 device
  • Using special switches
  • Computational grids: the  globus device
  • MPPs
  • IBM SP
  • Intel Paragon
  • Symmetric Multiprocessors (SMPs)
  • Sample MPI programs
  • The MPE library of useful extensions
  • Creating logfiles
  • Parallel X Graphics
  • Other  mpe routines
  • Profiling libraries
  • Accumulation of time spent in MPI routines
  • Logfile creation
  • Real-time animation
  • upshot
  • Jumpshot
  • Accessing the profiling libraries
  • Automatic generation of profiling libraries
  • Tools for Profiling Library Management
  • Examining event logs with  upshot
  • Debugging MPI programs with built-in tools
  • Error handlers
  • Command-line arguments for  mpirun
  • MPI arguments for the application program
  • p4 Arguments for the ch_p4 Device
  • p4 Debugging
  • Setting the Working Directory for the p4 Device
  • Command-line arguments for the application program
  • Starting jobs with a debugger
  • Starting the debugger when an error occurs
  • Attaching debugger to a running program
  • Related tools
  • Contents of the library files
  • Debugging MPI programs with TotalView
  • Preparing MPICH for TotalView debugging
  • Starting an MPICH program under TotalView control
  • Attaching to a running program
  • Debugging with TotalView
  • Summary
  • Other MPI Documentation
  • In Case of Trouble
  • Problems compiling or linking Fortran programs
  • General
  • Problems Linking C Programs
  • General
  • Sun Solaris
  • HPUX
  • Problems starting programs
  • General
  • Workstation Networks
  • Intel Paragon
  • IBM RS6000
  • IBM SP
  • Programs fail at startup
  • General
  • Workstation Networks
  • Programs fail after starting
  • General
  • HPUX
  • Trouble with Input and Output
  • General
  • IBM SP
  • Workstation Networks
  • Upshot and Nupshot
  • General
  • HP-UX
  • Appendices
  • Automatic generation of profiling libraries
  • Writing wrapper definitions
  • Options for  mpirun
  • MPI, Globus, and GUSTO
  • Using the globus device on GUSTO
  • Setting up security for GUSTO
  • Authenticating yourself to GUSTO
  • Using  mpirun on GUSTO
  • Advanced features of the globus device
  • Acknowledgments
  • Bibliography