Title :
An Accurate GPU Performance Model for Effective Control Flow Divergence Optimization
Author :
Cui, Zheng ; Liang, Yun ; Rupnow, Kyle ; Chen, Deming
Author_Institution :
Adv. Digital Sci. Center, Univ. of Illinois at Singapore, Singapore, Singapore
Abstract :
Graphics processing units (GPUs) are increasingly critical for general-purpose parallel processing performance. GPU hardware is composed of many streaming multiprocessors, each of which employs the single-instruction multiple-data (SIMD) execution style. This massively parallel architecture allows GPUs to execute tens of thousands of threads in parallel. Thus, GPU architectures efficiently execute heavily data-parallel applications. However, due to this SIMD execution style, resource utilization and thus overall performance can be significantly affected if computation threads must take diverging control paths. Control flow divergence in GPUs is a well-known problem: prior approaches have attempted to reduce control flow divergence through code transformations, memory access indirection, and input data reorganization. However, as we will demonstrate, the utility of these transformations is seriously affected by the lack of a guiding metric that properly estimates how control flow divergence affects application performance. In this paper, we introduce a metric that simply and accurately estimates performance of computation-bound GPU kernels with control flow divergence, and use the metric as a value function for thread re-grouping algorithms. We measure the performance on NVIDIA GTS250 GPU. For the tested set of applications, our experiments demonstrate that the proposed metric correlates well with actual GPU application performance. Through thread re-grouping guided by our metric, control flow divergence optimization can improve application performance by up to 3.19X.
Keywords :
graphics processing units; multi-threading; multiprocessing systems; operating system kernels; parallel architectures; NVIDIA GTS250 GPU; SIMD execution style; code transformations; computation-bound GPU kernel performance estimation; control flow divergence optimization; data-parallel applications; general-purpose parallel processing performance; graphics processing units; guiding metric; input data reorganization; massively parallel architecture; memory access indirection; resource utilization; single-instruction multiple-data execution style; streaming multiprocessors; thread regrouping algorithms; value function; Graphics processing unit; Hardware; Instruction sets; Kernel; Layout; Measurement; Optimization; CUDA; GPGPU; control flow divergence; performance estimation; performance metric;
Conference_Titel :
Parallel & Distributed Processing Symposium (IPDPS), 2012 IEEE 26th International
Conference_Location :
Shanghai
Print_ISBN :
978-1-4673-0975-2
DOI :
10.1109/IPDPS.2012.18