10075

KernelGen – the design and implementation of a next generation compiler platform for accelerating numerical models on GPUs

Dmitry Mikushin, Nikolay Likhogrud, Eddy Zheng Zhang, Christopher Bergstrom
Faculty of Informatics, Universita della Svizzera italiana, Switzerland
Universita della Svizzera italiana, 2013

@techreport{13kernelgen,

   author={Dmitry Mikushin and Nikolay Likhogrud and Eddy Zheng Zhang and Christopher Bergstrom},

   title={KernelGen the design and implementation of a next generation compiler platform for accelerating numerical models on GPUs},

   institution={University of Lugano},

   number={2013/02},

   year={2013},

   month={jul}

}

Download Download (PDF)   View View   Source Source   Source codes Source codes

Package:

2164

views

GPUs are becoming pervasive in scientific computing. Originally served as peripheral accelerators, now they are gradually turning into central computing nodes. However, most current directive-based approaches for parallelizing sequential legacy code such as OpenACC and HMPP simply off-load "hot" CPU code onto GPUs, entailing a lot of limitations such as unsupported external calls and coarse-grained data dependence analysis. This paper introduces KernelGen, which is a parallelization framework with robust parallelism detection mechanism and a novel GPU-centric execution model. KernelGen supports the major scientific programming languages including C and Fortran, and has multiple backends that can generate target code for both X86 CPUs and NVIDIA GPUs. The efficiency of KernelGen has been demonstrated by the performance improvement up to 5.4x compared with three major commercial OpenACC compilers over a benchmark suite of numerical kernels.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: