Interactive Static Software Performance Analysis in the IDE

Aaron Beigelbeck, Maurício Aniche, Jürgen Cito

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

23 Downloads (Pure)

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

Original languageEnglish
Title of host publicationProceedings - 2021 IEEE/ACM 29th International Conference on Program Comprehension, ICPC 2021
EditorsL. O'Conner
Place of PublicationPiscataway
PublisherIEEE
Pages490-494
Number of pages5
ISBN (Electronic)978-1-6654-1403-6
ISBN (Print)978-1-6654-1404-3
DOIs
Publication statusPublished - 2021
Event2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC) - Virtual at Madrid, Spain
Duration: 20 May 202121 May 2021
Conference number: 29th

Publication series

NameIEEE International Conference on Program Comprehension
Volume2021-May

Conference

Conference2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC)
Country/TerritorySpain
CityVirtual at Madrid
Period20/05/2121/05/21

Bibliographical note

Accepted author manuscript

Keywords

  • IDE integration
  • software performance
  • static analysis

Fingerprint

Dive into the research topics of 'Interactive Static Software Performance Analysis in the IDE'. Together they form a unique fingerprint.

Cite this