MPICH-G2: a Grid-enabled implementation of the Message Passing Interface

  • Authors:
  • Nicholas T. Karonis;Brian Toonen;Ian Foster

  • Affiliations:
  • Department of Computer Science, Northern Illinois University, DeKalb, IL and Mathematics and Computer Science Division, Argonne National Laboratory, Argonne, IL;Mathematics and Computer Science Division, Argonne National Laboratory, Argonne, IL;Mathematics and Computer Science Division, Argonne National Laboratory, Argonne, IL and The University of Chicago, Chicago, IL

  • Venue:
  • Journal of Parallel and Distributed Computing - Special issue on computational grids
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Application development for distributed-computing "Grids" can benefit from tools that variously hide or enable application-level management of critical aspects of the heterogeneous environment. As part of an investigation of these issues, we have developed MPICH-G2, a Grid-enabled implementation of the Message Passing Interface (MPI) that allows a user to run MPI programs across multiple computers, at the same or different sites, using the same commands that would be used on a parallel computer. This library extends the Argonne MPICH implementation of MPI to use services provided by the Globus Toolkit for authentication, authorization, resource allocation, executable staging, and I/O, as well as for process creation, monitoring, and control. Various performance-critical operations, including startup and collective operations, are configured to exploit network topology information. The library also exploits MPI constructs for performance management; for example, the MPI communicator construct is used for application-level discovery of, and adaptation to, both network topology and network quality-of-service mechanisms. We describe the MPICH-G2 design and implementation, present performance results, and review application experiences, including record-setting distributed simulations.