Visualizing complex dynamics in many-core accelerator architectures
University of British Columbia, Vancouver, BC, Canada
IEEE International Symposium on Performance Analysis of Systems & Software (ISPASS), 2010, p.164-174
@conference{ariel2010visualizing,
title={Visualizing complex dynamics in many-core accelerator architectures},
author={Ariel, A. and Fung, W.W.L. and Turner, A.E. and Aamodt, T.M.},
booktitle={Performance Analysis of Systems & Software (ISPASS), 2010 IEEE International Symposium on},
pages={164–174},
year={2010},
organization={IEEE}
}
While many-core accelerator architectures, such as today’s Graphics Processing Units (GPUs), offer orders of magnitude more raw computing power than contemporary CPUs, their massive parallelism often produces complex dynamic behaviors even with the simplest applications. Using a fixed set of hardware or simulator performance counters to quantify behavior over a large interval of time such as an entire application execution run or program phase may not capture this behavior. Software and/or hardware designers may consequently miss out on opportunities to optimize for better performance. Similarly, significant effort may be expended to find metrics that explain anomalous behavior in architecture design studies. Moreover, the increasing complexity of applications developed for today’s GPU has created additional difficulties for software developers when attempting to identify bottlenecks of an application for optimization. This paper presents a novel GPU performance visualization tool, AerialVision, to address these two problems. It interfaces with the GPGPU-Sim simulator to capture and visualize the dynamic behavior of a GPU architecture throughout an application run. Similar to existing performance analysis tools for CPUs, it can annotate individual lines of source code with performance statistics to simplify the bottleneck identification process. To provide further insight, AerialVision introduces a novel methodology to relate pathological dynamic architectural behaviors resulting in performance loss with the part of the source code that is responsible. By rapidly providing insight into complex dynamic behavior, AerialVision enables research on improving many-core accelerator architectures and will help ensure applications written for these architectures reach their full performance potential.
January 15, 2011 by hgpu