Charm++ and MPI embody two distinct perspectives for writing parallel programs. While MPI provides a process-centric, user-driven model for developing parallel codes, Charm++ supports work-centric, system-driven parallel programming. One of them might be a better or more natural fit for individual modules that constitute a parallel application. In this paper, we present a framework that enables hybrid parallel programming with Charm++ and MPI, and allows programmers to develop different modules of a parallel application in these two languages while facilitating smooth interoperation. We describe the challenges in enabling interoperation between Charm++ and MPI, and present techniques for managing the control flow and resource sharing between the two. Finally, we demonstrate the benefits of interoperation between Charm++ and MPI through several case studies that use production applications and libraries, including CHARM/Chombo, EpiSimdemics, NAMD, FFTW, MPI-IO and ParMETIS.
Charm++ and MPI: Combining the Best of Both Worlds
2015-05-01
294241 byte
Aufsatz (Konferenz)
Elektronische Ressource
Englisch
Combining LORAN and GPS: The Best of Both Worlds
NTIS | 1990
|Online Contents | 1994
Online Contents | 2005
|NTRS | 1991
|Combining the Best of Both Worlds - European versus U.S. electrical safety standards.
Online Contents | 2010
|