Interactive Static Software Performance Analysis in the IDE

05/04/2021
by   Aaron Beigelbeck, et al.
0

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

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/28/2021

Sorrel: an IDE Plugin for Managing Licenses and Detecting License Incompatibilities

Software development is a complex process that includes many different t...
research
02/26/2022

Static Analysis Deployment Pitfalls

Organizational, political, and configuration mistakes in the deployment ...
research
07/26/2022

Perun: Performance Version System

In this paper, we present Perun: an open-source tool suite for profiling...
research
12/21/2020

AC2 – Towards Understanding Architectural Changes in Rapid Releases

Open source projects are adopting faster release cycles that reflect var...
research
05/22/2017

Mira: A Framework for Static Performance Analysis

The performance model of an application can pro- vide understanding abou...
research
03/06/2020

The Cost and Benefits of Static Analysis During Development

Without quantitative data, deciding whether and how to use static analys...
research
08/18/2023

Incrementalizing Production CodeQL Analyses

Instead of repeatedly re-analyzing from scratch, an incremental static a...

Please sign up or login with your details

Forgot password? Click here to reset