PMI: A Scalable Parallel Process-Management Interface for Extreme-Scale Systems
Parallel programming models on large-scale systems require a scalable system for managing the processes that make up the execution of a parallel program. The process-management system must be able to launch millions of processes quickly when starting a parallel program and must provide mechanisms for the processes to exchange the information needed to enable them communicate with each other. MPICH2 and its derivatives achieve this functionality through a carefully defined interface, called PMI, that allows different process managers to interact with the MPI library in a standardized way. In this paper, we describe the features and capabilities of PMI. We describe both PMI-1, the current generation of PMI used in MPICH2 and all its derivatives, as well as PMI-2, the second-generation of PMI that eliminates various shortcomings in PMI-1. Together with the interface itself, we also describe a reference implementation for both PMI-1 and PMI-2 in a new process-management framework within MPICH2, called Hydra, and compare their performance in running MPI jobs with thousands of processes.
Unable to display preview. Download preview PDF.
- 1.Argonne National Laboratory: MPICH2, http://www.mcs.anl.gov/research/projects/mpich2
- 2.Castain, R., Woodall, T., Daniel, D., Squyres, J., Barrett, B., Fagg, G.: The Open Run-Time Environment (OpenRTE): A transparent multi-cluster environment for high-performance computing. In: Di Martino, B., Kranzlmüller, D., Dongarra, J. (eds.) EuroPVM/MPI 2005. LNCS, vol. 3666, pp. 225–232. Springer, Heidelberg (2005)CrossRefGoogle Scholar
- 3.Gara, A., Blumrich, M., Chen, D., Chiu, G., Coteus, P., Giampapa, M., Haring, R., Heidelberger, P., Hoenicke, D., Kopcsay, G., Liebsch, T., Ohmacht, M., SteinmacherBurow, B., Takken, T., Vranas, P.: Overview of the Blue Gene/L system architecture. IBM Journal of Research and Development 49(2/3) (2005)Google Scholar
- 4.Huang, W., Santhanaraman, G., Jin, H., Gao, Q., Panda, D.: Design of high performance MVAPICH2: MPI2 over InfiniBand. In: Proceedings of the sixth IEEE International Symposium on Cluster Computing and the Grid, Singapore Management University, Singapore, May 16–19 (2006)Google Scholar
- 5.Hydra process management framework, http://wiki.mcs.anl.gov/mpich2/index.php/Hydra_Process_Management_Framework
- 7.Microsoft MPI: http://msdn.microsoft.com/en-us/library/bb524831VS.85.aspx
- 8.PBS: Portable batch system , http://www.openpbs.org
- 9.OSC Mpiexec, http://www.osc.edu/~djohnson/mpiexec
- 11.PMI-2 Wire Protocol , http://wiki.mcs.anl.gov/mpich2/index.php/PMI_v2_Wire_Protocol
- 12.SiCortex Inc., http://www.sicortex.com
- 14.Sun Grid Engine , http://www.sun.com/software/sge/