Title :
Semi-automatic Tool to Ease the Creation and Optimization of GPU Programs
Author_Institution :
Dept. of Comput. Sci., Univ. of Copenhagen, Copenhagen, Denmark
Abstract :
We present a tool that reduces the development time of GPU-executable code. We implement a catalogue of common optimizations specific to the GPU architecture. Through the tool, the programmer can semi-automatically transform a computationally-intensive code section into GPU-executable form and apply optimizations thereto. Based on experiments, the code generated by the tool can be 3-256X faster than code generated by an OpenACC compiler, 4-37X faster than optimized CPU code, and attain up to 25% of peak performance of the GPU. We found that by using pattern-matching rules, many of the transformations can be performed automatically, which makes the tool usable for both novices and experts in GPU programming.
Keywords :
graphics processing units; program compilers; GPU program creation; GPU program optimization; GPU-executable code; OpenACC compiler; computationally-intensive code section; graphics processing unit; pattern-matching rule; Arrays; Graphics processing units; Hardware; Instruction sets; Kernel; Optimization; Programming;
Conference_Titel :
Parallel Processing Workshops (ICCPW), 2014 43rd International Conference on
DOI :
10.1109/ICPPW.2014.36