Title
Performance Debugging of GPGPU Applications with the Divergence Map
Abstract
The increasing programability and the high computational power of Graphical Processing Units (GPU) make them attractive to general purpose programming. However, taking full bene t of this execution environment is a challenging task. One of these challenges stem from divergences, a phenomenon that occurs when threads that execute in lock-step are forced to take di erent program paths due to branches in the code. In face of divergences, some threads will have to wait, idly, while their diverging siblings execute. Optimizing the code to avoid divergences is diffcult, because this task demands a deep understanding of programs that might be large and convoluted. In order to facilitate the detection of divergences, this paper introduces the divergence map, a data structure that indicates the location and the volume of divergences in a program. We build this map via dynamic profiling techniques, which we have implemented on top of an open source CUDA compiler. To illustrate the importance of the divergence map, we have used it to pin-point the core regions that must be optimized in well known public applications. By hand optimizing some applications, we have added 9-11% speedups onto kernels that have already gone through the sieve of many programmers.
Year
DOI
Venue
2010
10.1109/SBAC-PAD.2010.38
SBAC-PAD
Keywords
Field
DocType
challenging task,gpgpu applications,full bene,graphical processing units,data structure,core region,divergence map,dynamic profiling technique,performance debugging,deep understanding,execution environment,program path,optimization,public domain software,instruction sets,data structures,hardware,coprocessors,kernel
Data structure,Profiling (computer programming),Computer science,CUDA,Parallel computing,Compiler,Thread (computing),Code generation,General-purpose computing on graphics processing units,Debugging
Conference
Citations 
PageRank 
References 
3
0.42
13
Authors
4
Name
Order
Citations
PageRank
Bruno Coutinho1714.66
Diogo Sampaio2483.84
Fernando Magno Quintão Pereira321620.03
Wagner Meira Jr42039188.06