A Simple MPI Process Swapping Architecture for Iterative Applications
- 1 August 2004
- journal article
- Published by SAGE Publications in The International Journal of High Performance Computing Applications
- Vol. 18 (3) , 341-352
- https://doi.org/10.1177/1094342004047430
Abstract
Parallel computing is now popular and mainstream, but performance and ease of use remain elusive to many end-users. There exists a need for performance improvements that can be easily retrofitted to existing parallel applications. In this paper we present MPI process swapping, a simple performance enhancing add-on to the MPI programming paradigm. MPI process swapping improves performance by dynamically choosing the best available resources throughout application execution, using MPI process over-allocation and real-time performance measurement. Swapping provides fully automated performance monitoring and process management, and a rich set of primitives to control execution behavior manually or through an external tool. Swapping, as defined in this implementation, can be added to iterative MPI applications and requires as few as three lines of source code change. We verify our design for a particle dynamics application on desktop resources within a production commercial environment.Keywords
This publication has 9 references indexed in Scilit:
- Entropia: architecture and performance of an enterprise desktop grid systemJournal of Parallel and Distributed Computing, 2003
- MPICH-G2: A Grid-enabled implementation of the Message Passing InterfaceJournal of Parallel and Distributed Computing, 2003
- Diffusion Schemes for Load Balancing on Heterogeneous NetworksTheory of Computing Systems, 2002
- The Cactus Worm: Experiments with Dynamic Resource Discovery and Allocation in a Grid EnvironmentThe International Journal of High Performance Computing Applications, 2001
- FT-MPI: Fault Tolerant MPI, Supporting Dynamic Applications in a Dynamic WorldPublished by Springer Nature ,2000
- Dynamically forecasting network performance using the Network Weather ServiceCluster Computing, 1998
- A Competitive Analysis of Load Balancing Strategies for Parallel Ray TracingThe Journal of Supercomputing, 1998
- Dynamic load balancing for distributed memory multiprocessorsJournal of Parallel and Distributed Computing, 1989
- A trace-driven simulation study of dynamic load balancingIEEE Transactions on Software Engineering, 1988