Affiliation:
1. Univ. of California, Santa Barbara
Abstract
Parallel programs written in MPI have been widely used for developing high-performance applications on various platforms. Because of a restriction of the MPI computation model, conventional MPI implementations on shared-memory machines map each MPI node to an OS process, which can suffer serious performance degradation in the presence of multiprogramming. This paper studies compile-time and runtime techniques for enhancing performance portability of MPI code running on multiprogrammed shared-memory machines. The proposed techniques allow MPI nodes to be executed safety and efficiently as threads. Compile-time transformation eliminates global and static variables in C code using node-specific data. The runtime support includes an efficient and provably correct communication protocol that uses lock-free data structure and takes advantage of address space sharing among threads. The experiments on SGI Origin 2000 show that our MPI prototype called TMPI using the proposed techniques is competitive with SGI's native MPI implementation in a dedicated environment, and that it has significant performance advantages in a multiprogrammed environment.
Publisher
Association for Computing Machinery (ACM)
Reference34 articles.
1. The performance of spin lock alternatives for shared-money multiprocessors
2. Thread scheduling for multiprogrammed multiprocessors
3. Brightwell R. and Skjellum A. 1996. MPICH on the T3D: a case study of high performance message passing. Tech. rep. Computer Sci. Dept. Mississippi State Univ. Brightwell R. and Skjellum A. 1996. MPICH on the T3D: a case study of high performance message passing. Tech. rep. Computer Sci. Dept. Mississippi State Univ.
4. Efficient Message Passing Interface (MPI) for Parallel Computing on Clusters of Workstations
5. Cannon L. E. 1969. A cellular computer to implement the kalman filter algorithm. Ph.D. thesis Department of Electrical Engineering Montana State University Bozeman MT. Available from UMI Ann Arbor MI. Cannon L. E. 1969. A cellular computer to implement the kalman filter algorithm. Ph.D. thesis Department of Electrical Engineering Montana State University Bozeman MT. Available from UMI Ann Arbor MI.
Cited by
17 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Communication and Timing Issues with MPI Virtualization;27th European MPI Users' Group Meeting;2020-09-21
2. Multi-Level Load Balancing with an Integrated Runtime Approach;2018 18th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID);2018-05
3. Improved MPI collectives for MPI processes in shared address spaces;Cluster Computing;2014-03-19
4. Globalizing selectively;Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis;2013-11-17
5. MPI + MPI: a new hybrid approach to parallel programming with MPI plus shared memory;Computing;2013-05-19