Live Webcast 15th Annual Charm++ Workshop

Adaptive MPI
Workshop on Languages and Compilers for Parallel Computing (LCPC) 2003
Publication Type: Paper
Repository URL: ampi2003
Processor virtualization is a powerful technique that enables the runtime system to carry out intelligent adaptive optimizations like dynamic resource management. Charm++ is an early language/system that supports processor virtualization. This paper describes Adaptive MPI or AMPI, an MPI implementation and extension, that supports processor virtualization. AMPI implements virtual MPI processes (VPs), several of which may be mapped to a single physical processor. AMPI includes a powerful runtime support system that takes advantage of the degree of freedom afforded by allowing it to assign VPs onto processors. With this runtime system, AMPI supports such features as automatic adaptive overlap of communication and computation and automatic load balancing. It can also support other features such as checkpointing without additional user code, and the ability to shrink and expand the set of processors used by a job at runtime. This paper describes AMPI, its features, benchmarks that illustrate performance advantages and tradeoffs offered by AMPI, and application experiences.
Chao Huang and Orion Lawlor and L. V. Kale, "Adaptive MPI", Parallel Programming Laboratory, Department of Computer Science, University of Illinois at Urbana-Champaign, Proceedings of the 16th International Workshop on Languages and Compilers for Parallel Computing (LCPC 2003), LNCS 2958, College Station, Texas, pp. 306-322, October 2003.
Research Areas