DocumentCode :
2241313
Title :
Improving SIMT Efficiency of Global Rendering Algorithms with Architectural Support for Dynamic Micro-Kernels
Author :
Steffen, Michael ; Zambreno, Joseph
Author_Institution :
Electr. & Comput. Eng., Iowa State Univ., Ames, IA, USA
fYear :
2010
fDate :
4-8 Dec. 2010
Firstpage :
237
Lastpage :
248
Abstract :
Wide Single Instruction, Multiple Thread (SIMT) architectures often require a static allocation of thread groups that are executed in lockstep throughout the entire application kernel. Individual thread branching is supported by executing all control flow paths for threads in a thread group and only committing the results of threads on the current control path. While convergence algorithms are used to maximize processor efficiency during branching operations, applications requiring complex control flow often result in low processor efficiency due to the length and quantity of control paths. Global rendering algorithms are an example of a class of application that can be accelerated using a large number of independent parallel threads that each require complex control flow, resulting in comparatively low efficiency on SIMT processors. To improve processor utilization for global rendering algorithms, we introduce a SIMT architecture that allows for threads to be created dynamically at runtime. Large application kernels are broken down into smaller code blocks we call μ-kernels that dynamically created threads can execute. These runtime μkernels allow for the removal of branching statements that would cause divergence within a thread group, and result in new threads being created and grouped with threads beginning execution of the same μ-kernel. In our evaluation of SIMT processor efficiency for a global rendering algorithms, dynamic μ-kernels improved processor performance by an average of 1.4x.
Keywords :
convergence; multi-threading; operating system kernels; program diagnostics; rendering (computer graphics); SIMT efficiency; application kernel; architectural support; convergence algorithm; dynamic micro kernel; global rendering algorithm; individual thread branching; parallel thread; processor utilization; single instruction multiple thread; static allocation; thread group;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Microarchitecture (MICRO), 2010 43rd Annual IEEE/ACM International Symposium on
Conference_Location :
Atlanta, GA
ISSN :
1072-4451
Print_ISBN :
978-1-4244-9071-4
Type :
conf
DOI :
10.1109/MICRO.2010.45
Filename :
5695540
Link To Document :
بازگشت