Charm + + & MPI : Combining the Best of Both Worlds
Charm + + & MPI : Combining the Best of Both Worlds
复制标题
魅力
DOI:
--
复制
发表时间:
2014
期刊:
影响因子:
--
通讯作者:
L. Kalé
中科院分区:
文献类型:
--
作者:
Nikhil Jain;A. Bhatele;Jae;M. Adams;F. Miniati;Chao Mei;L. Kalé
MPI and Charm++ embody two distinct perspectives for writing parallel programs. While MPI provides a processor-centric, user-driven model for developing parallel codes, Charm++ supports work-centric, overdecompositionbased, system-driven parallel programming. One or the other can be the best or most natural fit for distinct modules that constitute a parallel application. In this paper, we present a framework that enables hybrid parallel programming with MPI and Charm++, 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 MPI and Charm++, and present techniques for managing the control flow and resource sharing in such scenarios. Finally, we demonstrate the benefits of interoperation between MPI and Charm++ through several case studies that use production applications and libraries, including CHARM/Chombo, EpiSimdemics, NAMD, FFTW, MPI-IO and ParMETIS.