Title :
In situ understanding of performance bottlenecks through visually augmented code
Author :
Beck, Fabio ; Moseler, Oliver ; Diehl, Stephan ; Rey, Gunter Daniel
Author_Institution :
VISUS, Univ. of Stuttgart, Stuttgart, Germany
Abstract :
Finding and fixing performance bottlenecks requires sound knowledge of the program that is to be optimized. In this paper, we propose an approach for presenting performance-related information to software engineers by visually augmenting source code shown in an editor. Small diagrams at each method declaration and method call visualize the propagation of runtime consumption through the program as well as the interplay of threads in parallelized programs. Advantages of in situ visualization like this over traditional representations, where code and profiling information are shown in different places, promise to be the prevention of a split-attention effect caused by multiple views; information is presented where required, which supports understanding and navigation. We implemented the approach as an IDE plug-in and tested it in a user study with four developers improving the performance of their own programs. The user study provides insights into the process of understanding performance bottlenecks with our approach.
Keywords :
data visualisation; multi-threading; software performance evaluation; IDE plug-in; in-situ performance bottlenecks; in-situ visualization; method call; method declaration; multithreading; parallelized programs; performance-related information; program optimization; program performance improvement; runtime consumption propagation visualization; software editor; visually augmented source code; Context; Data visualization; Instruction sets; Measurement; Runtime; Visualization;
Conference_Titel :
Program Comprehension (ICPC), 2013 IEEE 21st International Conference on
Conference_Location :
San Francisco, CA
DOI :
10.1109/ICPC.2013.6613834