Title :
A Polyhedral Modeling Based Source-to-Source Code Optimization Framework for GPGPU
Author :
Wang, Chenxi ; Kang, Kang ; Zhu, Maohua ; Deng, Yangdong
Author_Institution :
Inst. of Microelectron., Tsinghua Univ. Beijing, Beijing, China
Abstract :
In this paper, we propose a source-to-source code optimization framework for general purpose computing on graphics processing units (GPGPU). Our framework is based on a re-formulation of the polyhedral loop transformation theory under the context of GPGPU. We prove that the number of actual memory transactions can be used as a performance metric to guide the code optimization process. In addition, we show how to analytically derive such a metric from a GPU program´s polyhedral model. We also develop formations of GPGPU-specific optimization problems and propose corresponding affine transformations, which can be applied to an initial parallelized solution derived from input C/C++ code. The experiment results demonstrate the effectiveness of our work. On average, the code generated by our work outperforms a leading GPGPU compiler and NVIDIA handcrafted CUBLAS 4.0 by 20% and 17%, respectively.
Keywords :
C++ language; affine transforms; graphics processing units; optimisation; GPGPU compiler; GPGPU-specific optimization problems; NVIDIA handcrafted CUBLAS; actual memory transactions; affine transformations; general purpose computing on graphics processing units; initial parallelized solution; input C-C++ code; performance metric; polyhedral loop transformation theory reformulation; polyhedral modeling based source-to-source code optimization framework; Arrays; Graphics processing unit; Instruction sets; Optimization; Parallel processing; Programming; Vectors; CUDA; GPGPU; GPU; parallelism; polyhedral; source-to-source optimization;
Conference_Titel :
Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International
Conference_Location :
Shanghai
Print_ISBN :
978-1-4673-0974-5
DOI :
10.1109/IPDPSW.2012.256