Fixing Performance Bugs: An Empirical Study of Open-Source GPGPU Programs
Dept. of ECE, NCSU, Raleigh, NC, USA
41st International Conference on Parallel Processing (ICPP 2012), 2012
@inproceedings{yang2012fixing,
title={Fixing Performance Bugs: An Empirical Study of Open-Source GPGPU Programs},
author={Yang, Y. and Xiang, P. and Mantor, M. and Zhou, H.},
booktitle={International Conference on Parallel Processing},
year={2012}
}
Given the extraordinary computational power of modern graphics processing units (GPUs), general purpose computation on GPUs (GPGPU) has become an increasingly important platform for high performance computing. To better understand how well the GPU resource has been utilized by application developers and then to facilitate them to develop high performance GPGPU code, we conduct an empirical study on GPGPU programs from ten open-source projects. These projects span a wide range of disciplines and many are designed as high performance libraries. Among these projects, we found various performance ‘bugs’, i.e., code segments leading to inefficient use of GPU hardware. We characterize these performance bugs, and propose the bug fixes. Our experiments confirm both significant performance gains and energy savings from our fixes and reveal interesting insights on different GPUs.
August 21, 2012 by hgpu