A Framework for Profiling and Performance Monitoring of Heterogeneous Applications
Department of Electrical and Computer Engineering, Northeastern University, Boston, MA, U.S.A.
Programmability Issues for Heterogeneous Multicores (MULTIPROG-2013), 2013
@article{mistry2013framework,
title={A Framework for Profiling and Performance Monitoring of Heterogeneous Applications},
author={Mistry, Perhaad and Ukidave, Yash and Schaa, Dana and Kaeli, David},
year={2013}
}
Heterogeneous computing has become prevalent due to the comput-ing power and low cost of Graphics Processing Units(GPUs). OpenCL provides a programming model where the CPU is the master or host, and compute-intensive portions of an algorithm are offloaded to the GPU. However, the host-device model is very limiting. In this model, data-dependent, run-time optimizations that could benefit many applications cannot be easily realized as the cost of transfer-ring intermediate results between devices is high. Besides, implementing run time optimizations for OpenCL devices would require additional synchronization, pro-filing and value monitoring code on the part of the application developer. To overcome this challenge, we present the open-source Haptic (Heterogeneous Application Profiling Tools) framework. Haptic provides extensions to OpenCL that create a closer coupling between the host and device, which allows them to work cooperatively on challenging compute problems. This work discusses the architecture of the Haptic system. The effectiveness of Haptic is demonstrated using signal processing and computer vision applications where performance im-provements up-to 40% were seen. The worst case overhead witnessed was 17.5%.
April 17, 2013 by hgpu