2017 IEEE Working Conference on Software Visualization (VISSOFT) (2017)
Sept. 18, 2017 to Sept. 19, 2017
For developers concerned with a performance drop or improvement in their software, a profiler allows a developer to quickly search and identify bottlenecks and leaks that consume much execution time. Non real-time profilers analyze the history of already executed stack traces, while a real-time profiler outputs the results concurrently with the execution of software, so users can know the results instantaneously. However, a real-time profiler risks providing overly large and complex outputs, which is difficult for developers to quickly analyze. In this paper, we visualize the performance data from a real-time profiler. We visualize program execution as a three-dimensional (3D) city, representing the structure of the program as artifacts in a city (i.e., classes and packages expressed as buildings and districts) and their program executions expressed as the fluctuating height of artifacts. Through two case studies and using a prototype of our proposed visualization, we demonstrate how our visualization can easily identify performance issues such as a memory leak and compare performance changes between versions of a program. A demonstration of the interactive features of our prototype is available at https://youtu.be/eleVo19Hp4k.
data visualisation, program debugging, program diagnostics, software maintenance, visual programming
K. Ogami, R. G. Kula, H. Hata, T. Ishio and K. Matsumoto, "Using High-Rising Cities to Visualize Performance in Real-Time," 2017 IEEE Working Conference on Software Visualization (VISSOFT), Shanghai, China, 2018, pp. 33-42.