@article {390, title = {Visualizing and Exploring Profiles with Calling Context Ring Charts}, journal = {Software: Practice and Experience}, volume = {40}, year = {2010}, month = {08/2010}, abstract = {Calling context profiling is an important technique for analyzing the performance of object-oriented software with complex inter-procedural control flow. The Calling Context Tree (CCT) is a common data structure that stores dynamic metrics, such as CPU time, separately for each calling context. As CCTs may comprise millions of nodes, there is a need for a condensed visualization that eases the localization of performance bottlenecks. In this article, we discuss Calling Context Ring Charts (CCRCs), a compact visualization for CCTs, where callee methods are represented in ring segments surrounding the caller{\textquoteright}s ring segment. In order to reveal hot methods, their callers, and callees, the ring segments can be sized according to a chosen dynamic metric. We describe two case studies where CCRCs help us to detect and fix performance problems in applications. A performance evaluation also confirms that our implementation can efficiently handle large CCTs.}, doi = {10.1002/spe.985}, attachments = {http://gsd.uwaterloo.ca/sites/default/files/published-SPE10-Journal-CCRCs.pdf}, author = {Philippe Moret and Walter Binder and Alex Villaz{\'o}n and Danilo Ansaloni and Abbas Heydarnoori} }