• DocumentCode
    560137
  • Title

    Optimizing the Barnes-Hut algorithm in UPC

  • Author

    Zhang, Junchao ; Behzad, Babak ; Snir, Marc

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Illinois at Urbana-Champaign, Urbana, IL, USA
  • fYear
    2011
  • fDate
    12-18 Nov. 2011
  • Firstpage
    1
  • Lastpage
    11
  • Abstract
    PGAS languages´ support of a global name space facilitates the expression of parallel algorithms, since communication is implicit. This is especially convenient when writing irregular applications with data-dependent, dynamically changing communication patterns. However, programming in a shared memory style, with no explicit control of communication, may result in poor performance. The problem may be due to weaknesses of current implementations of PGAS languages or limitations inherent in these languages. To clarify which is the case, we discuss an implementation in UPC of the Barnes-Hut algorithm. A literal port of a good quality shared-memory implementation (merely replacing shared arrays with partitioned global ar- rays) achieves abysmal performance more than 1000 times worse than a message-passing implementation. We achieve in UPC a performance comparable to message-passing with a series of optimizations. Most of these optimizations could be performed with limited changes in the source code using an enhanced run-time and a few language extensions or pragmas. We discuss the implications to the programmer, the compiler and PGAS languages themselves.
  • Keywords
    C language; message passing; parallel algorithms; parallel programming; shared memory systems; Barnes-Hut algorithm; PGAS languages; UPC; Unified Parallel C; abysmal performance; dynamically changing communication patterns; language extensions; message passing implementation; parallel algorithms; partitioned global address space language; shared memory style programming; source code; Electronics packaging; Force; Instruction sets; Message systems; Octrees; Optimization; Programming; Barnes-Hut; N-body; PGAS; UPC;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computing, Networking, Storage and Analysis (SC), 2011 International Conference for
  • Conference_Location
    Seatle, WA
  • Electronic_ISBN
    978-1-4503-0771-0
  • Type

    conf

  • Filename
    6114399