News

Deconstructing Hardware Usage for General Purpose Computation on GPUs (GPGPU) [abstract] (CiteSeerX, PDF)
Budyanto Himawan and Manish Vachharajani
Proceedings of the 2006 Workshop on Duplicating, Debunking, and Deconstructing (WDDD), June 2006.

The high-programmability and numerous compute resources on Graphics Processing Units (GPUs) have allowed researchers to dramatically accelerate many non-graphics applications. This initial success has generated great interest in mapping applications to GPUs. Accordingly, several works have focused on helping application developers rewrite their application kernels for the explicitly parallel but restricted GPU programming model. However, there has been far less work that examines how these applications actually utilize the underlying hardware.

This paper focuses on deconstructing how General Purpose applications on GPUs (GPGPU applications) utilize the underlying GPU pipeline. The paper identifies which parts of the pipeline are utilized, how they are utilized, and why they are suitable for general purpose computation. For those parts that are under-utilized, the paper examines the underlying causes for the under-utilization and suggests changes that would make them more useful for GPGPU applications. Hopefully, this analysis will help designers include the most useful features when designing novel parallel hardware for general purpose applications, and help them avoid restrictions that limit the utility of the hardware. Furthermore, by highlighting the capabilities of existing GPU components, this paper should also help GPGPU developers make more efficient use of the GPU.