Title
Total recall: a debugging framework for GPUs
Abstract
GPUs have transformed from simple fixed-function processors to powerful, programmable stream processors and are continuing to evolve. Programming these massively parallel GPUs, however, is very different from programming a sequential CPU. Lack of native support for debugging coupled with the parallelism in the GPU makes program development for the GPU a non-trivial task. As GPU programs grow in complexity because of scaling in maximum allowed program size and increased demand in terms of realism, debugging GPU code is becoming a major timesink for content developers. In addition to more complex shaders, applications are using multi-pass effects in order to create more convincing reality. In this paper, we present a debugging framework that can be employed to debug complex code running on the GPU in an efficient manner. By observing the API calls of the application that are made to the 3D runtime, the framework can keep track of the program's state in memory. Upon the programmer's request, it is able to capture and deterministically replay the stream of instructions that caused the final write to a pixel of interest. This execution stream includes writes to intermediate render targets and spans across shader boundaries. The stream of instructions can then be replayed on the CPU via emulation and the programmer can debug the straight-line code with ease. We also present a hardware-friendly scheme that can be used to accelerate the debugging process for long-chain multi-pass effects.
Year
Venue
Keywords
2008
Graphics Hardware
program size,debugging framework,program development,gpu program,execution stream,debugging process,straight-line code,debugging gpu code,complex code,total recall,programmable stream processor,gpu programming,debugging
Field
DocType
ISBN
Central processing unit,Programmer,Computer graphics (images),Computer science,Massively parallel,Parallel computing,Emulation,Shader,Stream processing,Operating system,Algorithmic program debugging,Debugging
Conference
978-3-905674-09-5
Citations 
PageRank 
References 
1
0.36
4
Authors
2
Name
Order
Citations
PageRank
Ahmad Sharif130.73
Hsien-Hsin Sean Lee21657102.66