• DocumentCode
    1995109
  • Title

    Toward Abstracting the Communication Intent in Applications to Improve Portability and Productivity

  • Author

    Mintz, Tiffany M. ; Hernandez, Oscar ; Kartsaklis, Christos ; Bernholdt, David E. ; Eisenbach, Markus ; Pophale, Swaroop

  • Author_Institution
    Oak Ridge Nat. Lab., Oak Ridge, TN, USA
  • fYear
    2013
  • fDate
    20-24 May 2013
  • Firstpage
    385
  • Lastpage
    393
  • Abstract
    Programming with communication libraries such as the Message Passing Interface (MPI) obscures the high-level intent of the communication in an application and makes static communication analysis difficult to do. Compilers are unaware of communication libraries´ specifics, leading to the exclusion of communication patterns from any automated analysis and optimizations. To overcome this, communication patterns can be expressed at higher-levels of abstraction and incrementally added to existing MPI applications. In this paper, we propose the use of directives to clearly express the communication intent of an application in a way that is not specific to a given communication library. Our communication directives allow programmers to express communication among processes in a portable way, giving hints to the compiler on regions of computations that can be overlapped with communication and relaxing communication constraints on the ordering, completion and synchronization of the communication imposed by specific libraries such as MPI. The directives can then be translated by the compiler into message passing calls that efficiently implement the intended pattern and be targeted to multiple communication libraries. Thus far, we have used the directives to express point-to-point communication patterns in C, C++ and Fortran applications, and have translated them to MPI and SHMEM.
  • Keywords
    C++ language; FORTRAN; message passing; parallel processing; C application; C++ application; Fortran application; MPI applications; communication patterns; compiler; high-level communication intent; message passing interface; multiple communication libraries; static communication analysis; Arrays; Libraries; Message passing; Optimization; Parallel processing; Program processors; communication; directives; global address space; parallel computing; passing; remote data transfer; scientific computing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2013 IEEE 27th International
  • Conference_Location
    Cambridge, MA
  • Print_ISBN
    978-0-7695-4979-8
  • Type

    conf

  • DOI
    10.1109/IPDPSW.2013.66
  • Filename
    6650910