Logo image
KERNELGEN – the design and implementation of a next generation compiler platform for accelerating numerical models on GPUs
Technical documentation   Open access

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

Dmitry Mikushin, Nikolay Likhogrud and Eddy Z. Zhang
Rutgers University
2013
DOI:
https://doi.org/10.7282/T38S4TFS

Abstract

GPUs are getting more and more important in scientific computing, slowly growing from peripheral accelerators into central processing nodes. In the same time, current OpenACC and HMPP directive-based approaches imply offloading of “hot” code regions onto GPUs, as the only one possible development strategy. Furthermore, as the portion of GPU code and target application size grows, essential limitations of this programming model such as unsupported external functions calls and insufficient data dependencies analysis become critical. This paper introduces more robust parallelism detection approach based on runtime-assisted polyhedral analysis and LLVM compiler infrastructure, as well as a novel GPU-centric execution model. Complemented by GCC frontend, NVPTX backend and other parts, complete GPU compiler prototype called KernelGen has been developed. Test kernels produced by KernelGen are up to 60% faster than PGI OpenACC compiler. KernelGen is proposed as community open-source platform for GPU compiler optimizations research
pdf
KERNELGEN the design and implementation of a next generation compiler platform for accelerating numerical models on GPUs289.95 kBDownloadView
Version of Record (VoR) Open Access
url
Report an accessibility issueView
Please complete a content remediation request to report an accessibility issue with a library electronic resource, website, or service.

Metrics

316 File downloads
69 Record Views

Details

Logo image