• DocumentCode
    1918921
  • Title

    A Compiler-Based Tool for Array Analysis in HPC Applications

  • Author

    Qawasmeh, Ahmad ; Chapman, Barbara ; Banerjee, Amrita

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Houston, Houston, TX, USA
  • fYear
    2012
  • fDate
    10-13 Sept. 2012
  • Firstpage
    454
  • Lastpage
    463
  • Abstract
    Array region analysis plays a significant role in various optimizations at compile time. Displaying array access information efficiently in HPC applications has been a vital challenge for scientists and developers for the past few years. Dragon array region analysis tool is a powerful and interactive tool that was built on top of the Open UH compiler, an open source C/C++/Fortran compiler, that supports OpenMP and CAF programming models. We have extended the linear-based Region analysis method and the high level IR (WHIRL) of Open UH to visualize the static and interprocedural array region accesses, the frequency of these accesses per access mode, the access mode in which the array is processed, the number of dimensions, the size of each dimension, the total size in bytes allocated to this array statically, and the memory location. We have also defined the access density term which illustrates the frequency of accesses per bytes allocated to these arrays. The information provided enables users to efficiently develop and optimize HPC applications by understanding procedure side effects and finding inefficiencies in defining arrays, which guides to a better memory allocation and cache usage. Moreover, we demonstrate the access density of the portions of arrays that have been accessed, which is crucial to reduce data transfers between host and device when using directive-based GPU programming models.
  • Keywords
    C++ language; FORTRAN; application program interfaces; cache storage; data visualisation; graphics processing units; multi-threading; program compilers; public domain software; shared memory systems; CAF programming model; Dragon array region analysis tool; HPC applications; Open UH compiler; OpenMP programming model; WHIRL; cache usage; compiler-based tool; data transfer reduction; directive-based GPU programming models; high level IR; interactive tool; interprocedural array region access visualization; linear-based region analysis method; memory allocation; memory location; multithreaded programming API; open source C compiler; open source C++ compiler; open source Fortran compiler; static array region access visualization; Arrays; Data mining; Graphics processing unit; Indexes; Optimization; Programming; Analysis tool; Array Region Analysis; Compiler-based tool; Linear-based techniques;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Workshops (ICPPW), 2012 41st International Conference on
  • Conference_Location
    Pittsburgh, PA
  • ISSN
    1530-2016
  • Print_ISBN
    978-1-4673-2509-7
  • Type

    conf

  • DOI
    10.1109/ICPPW.2012.63
  • Filename
    6337513