DocumentCode
2957940
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
fYear
2012
fDate
21-25 May 2012
Firstpage
83
Lastpage
94
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;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing Symposium (IPDPS), 2012 IEEE 26th International
Conference_Location
Shanghai
ISSN
1530-2075
Print_ISBN
978-1-4673-0975-2
Type
conf
DOI
10.1109/IPDPS.2012.18
Filename
6267826
Link To Document