Interactive Static Software Performance Analysis in the IDE

Conference Paper (2021)
Author(s)

Aaron Beigelbeck (Technische Universität Wien)

Maurício Aniche (TU Delft - Software Engineering)

Jürgen Cito (Technische Universität Wien)

Research Group
Software Engineering
Copyright
© 2021 Aaron Beigelbeck, Maurício Aniche, Jürgen Cito
DOI related publication
https://doi.org/10.1109/ICPC52881.2021.00057
More Info
expand_more
Publication Year
2021
Language
English
Copyright
© 2021 Aaron Beigelbeck, Maurício Aniche, Jürgen Cito
Research Group
Software Engineering
Pages (from-to)
490-494
ISBN (print)
978-1-6654-1404-3
ISBN (electronic)
978-1-6654-1403-6
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Detecting performance issues due to suboptimal code during the development process can be a daunting task, especially when it comes to localizing them after noticing performance degradation after deployment. Static analysis has the potential to provide early feedback on performance problems to developers without having to run profilers with expensive (and often unavailable) performance tests. We develop a VSCode tool that integrates the static performance analysis results from Infer via code annotations and decorations (surfacing complexity analysis results in context) and side panel views showing details and overviews (enabling explainability of the results). Additionally, we design our system for interactivity to allow for more responsiveness to code changes as they happen. We evaluate the efficacy of our tool by measuring the overhead that the static performance analysis integration introduces in the development workflow. Further, we report on a case study that illustrates how our system can be used to reason about software performance in the context of a real performance bug in the ElasticSearch open-source project.Demo video: https://www.youtube.com/watch?v=-GqPb-YZMOs Repository: https://github.com/ipa-lab/vscode-infer-performance

Files

License info not available