• DocumentCode
    723700
  • Title

    Charm++ and MPI: Combining the Best of Both Worlds

  • Author

    Jain, Nikhil ; Bhatele, Abhinav ; Jae-Seung Yeom ; Adams, Mark F. ; Miniati, Francesco ; Chao Mei ; Kale, Laxmikant V.

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Illinois at Urbana-Champaign, Urbana, IL, USA
  • fYear
    2015
  • fDate
    25-29 May 2015
  • Firstpage
    655
  • Lastpage
    664
  • Abstract
    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.
  • Keywords
    application program interfaces; message passing; open systems; parallel programming; CHARM/Chombo; Charm++; EpiSimdemics; FFTW; MPI-IO; NAMD; ParMETIS; control flow; hybrid parallel programming; interoperation; parallel code; resource sharing; system-driven parallel programming; Libraries; Parallel programming; Process control; Productivity; Runtime; Writing; Charm++; Coexistence; Interoperation; MPI;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium (IPDPS), 2015 IEEE International
  • Conference_Location
    Hyderabad
  • ISSN
    1530-2075
  • Type

    conf

  • DOI
    10.1109/IPDPS.2015.102
  • Filename
    7161553