• DocumentCode
    1925232
  • Title

    A compiler for high performance computing with many-core accelerators

  • Author

    Nakasato, Naohito ; Makino, Jun

  • Author_Institution
    Dept. of Comput. Sci. & Eng., Univ. of Aizu, Aizu-Wakamatsu, Japan
  • fYear
    2009
  • fDate
    Aug. 31 2009-Sept. 4 2009
  • Firstpage
    1
  • Lastpage
    9
  • Abstract
    We introduce a newly developed compiler for high performance computing using many-core accelerators. A high peak performance of such accelerators attracts researchers who are always demanding faster computers. However, it is difficult to create an efficient implementation of an existing serial program for such accelerators even in the case of massively parallel problems. While existing parallel programming tools force us to program every details of an implementation from loop-level parallelism to 4-vector SIMD operations, our novel approach is that given a compute intensive problem expressed as a nested loop, the compiler only ask us to define a compute kernel inside the inner-most loop. We observe that input variables appeared in the kernel is classified into two types; invariant during the loop and variables updated in each iteration. The compiler let us to specify either type of the inputs so as it pick a predefined optimal way to process them. The compiler successfully generates the fastest code ever for many-particle simulations with the performance of 500 GFLOPS (single precision) on RV770 GPU. Another successful application is the evaluation of a multidimensional integral. It runs at a speed of 5 - 7 GFLOPS (quadruple precision) on both GRAPE-DR and GPU.
  • Keywords
    parallel programming; program compilers; program control structures; vector processor systems; 4-vector SIMD operation; GPU; GRAPE-DR; compiler; high performance computing; loop-level parallelism; many-core accelerator; many-particle simulation; multidimensional integral; nested loop; parallel programming; serial program; Acceleration; Concurrent computing; High performance computing; Input variables; Kernel; Multidimensional systems; Parallel processing; Parallel programming; Pipelines; Program processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Cluster Computing and Workshops, 2009. CLUSTER '09. IEEE International Conference on
  • Conference_Location
    New Orleans, LA
  • ISSN
    1552-5244
  • Print_ISBN
    978-1-4244-5011-4
  • Electronic_ISBN
    1552-5244
  • Type

    conf

  • DOI
    10.1109/CLUSTR.2009.5289127
  • Filename
    5289127