• DocumentCode
    625646
  • Title

    Exploring Traditional and Emerging Parallel Programming Models Using a Proxy Application

  • Author

    Karlin, Ian ; Bhatele, Abhinav ; Keasler, Jeff ; Chamberlain, Bradford L. ; Cohen, Johanne ; DeVito, Zachary ; Haque, Rakibul ; Laney, Daniel ; Luke, Edward ; Wang, F. ; Richards, Donald ; Schulz, Markus ; Still, Charles H.

  • Author_Institution
    Lawrence Livermore Nat. Lab., Livermore, CA, USA
  • fYear
    2013
  • fDate
    20-24 May 2013
  • Firstpage
    919
  • Lastpage
    932
  • Abstract
    Parallel machines are becoming more complex with increasing core counts and more heterogeneous architectures. However, the commonly used parallel programming models, C/C++ with MPI and/or OpenMP, make it difficult to write source code that is easily tuned for many targets. Newer language approaches attempt to ease this burden by providing optimization features such as automatic load balancing, overlap of computation and communication, message-driven execution, and implicit data layout optimizations. In this paper, we compare several implementations of LULESH, a proxy application for shock hydrodynamics, to determine strengths and weaknesses of different programming models for parallel computation. We focus on four traditional (OpenMP, MPI, MPI+OpenMP, CUDA) and four emerging (Chapel, Charm++, Liszt, Loci) programming models. In evaluating these models, we focus on programmer productivity, performance and ease of applying optimizations.
  • Keywords
    C++ language; application program interfaces; message passing; optimisation; parallel machines; parallel programming; software architecture; C/C++; LULESH; MPI; OpenMP; automatic load balancing; data layout optimizations; heterogeneous architectures; message-driven execution; parallel machines; parallel programming; proxy application; shock hydrodynamics; Graphics processing units; Kernel; Message systems; Optimization; Parallel processing; Productivity; Programming; co-design; parallel programming models; performance; productivity; proxy application;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel & Distributed Processing (IPDPS), 2013 IEEE 27th International Symposium on
  • Conference_Location
    Boston, MA
  • ISSN
    1530-2075
  • Print_ISBN
    978-1-4673-6066-1
  • Type

    conf

  • DOI
    10.1109/IPDPS.2013.115
  • Filename
    6569874