Optimizing threaded MPI execution on SMP clusters
- 17 June 2001
- proceedings article
- Published by Association for Computing Machinery (ACM)
- p. 381-392
- https://doi.org/10.1145/377792.377895
Abstract
Our previous work has shown that using threads to execute MPI programs can yield great performance gain on multiprogrammed shared-memory machines. This paper investigates the design and implementation of a thread-based MPI system on SMP clusters. Our study indicates that with a proper design for threaded MPI execution, both point-to-point and collective communication performance can be improved substantially, compared to a process-based MPI implementation in a cluster environment. Our contribution includes a hierarchy-aware and adaptive communication scheme for threaded MPI execution and a thread-safe network device abstraction that uses event-driven synchronization and provides separated collective and point-to-point communication channels. This paper describes the implementation of our design and illustrates its performance advantage on a Linux SMP cluster.Keywords
This publication has 11 references indexed in Scilit:
- TPVM: distributed concurrent computing with lightweight processesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Program transformation and runtime support for threaded MPI execution on shared-memory machinesACM Transactions on Programming Languages and Systems, 2000
- MagPIePublished by Association for Computing Machinery (ACM) ,1999
- Adaptive two-level thread management for fast MPI execution on shared memory machinesPublished by Association for Computing Machinery (ACM) ,1999
- Optimization of MPI collectives on clusters of large-scale SMP'sPublished by Association for Computing Machinery (ACM) ,1999
- LPVM: a step towards multithread PVMConcurrency: Practice and Experience, 1998
- Multi-protocol active messages on a cluster of SMP'sPublished by Association for Computing Machinery (ACM) ,1997
- MPI-FM: High Performance MPI on Workstation ClustersJournal of Parallel and Distributed Computing, 1997
- A high-performance, portable implementation of the MPI message passing interface standardParallel Computing, 1996
- A case for NOW (Networks of Workstations)IEEE Micro, 1995