Profiling General Purpose GPU Applications

  • Bruno Rocha Coutinho UFMG
  • George Luiz Medeiros Teodoro UFMG
  • Rafael Sachetto Oliveira UFMG
  • Dorgival Olavo Guedes Neto UFMG
  • Renato Antonio Celso Ferreira UFMG

Resumo


We are witnessing an increasing adoption of GPUs for performing general purpose computation, which is usually known as GPGPU. The main challenge in developing such applications is that they often do not fit in the model required by the graphics processing devices, limiting the scope of applications that may be benefit from the computing power provided by GPUs. Even when the application fits GPU model, obtaining optimal resource usage is a complex task. In this work we propose a profiling tool for GPGPU applications. This tool use a profiling strategy based on performance predicates and is able to quantify the major sources of performance degradation while providing hints on how to improve the applications. We used our tool in CUDA programs and were able to understand and improve their performance.
Palavras-chave: Yarn, Programming profession, Computer architecture, Application software, Degradation, Coprocessors, Concurrent computing, Kernel, High performance computing, Graphics, performance measurement, gpgpu, cuda
Publicado
28/10/2009
COUTINHO, Bruno Rocha; TEODORO, George Luiz Medeiros; OLIVEIRA, Rafael Sachetto; GUEDES NETO, Dorgival Olavo; FERREIRA, Renato Antonio Celso. Profiling General Purpose GPU Applications. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 21. , 2009, São Paulo/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2009 . p. 11-18.