Interactive Static Software Performance Analysis in the IDE

by   Aaron Beigelbeck, et al.

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: Repository:



There are no comments yet.


page 1

page 2

page 3

page 4


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

Software development is a complex process that includes many different t...

Revizor: A Data-Driven Approach to Automate Frequent Code Changes Based on Graph Matching

Many code changes that developers make in their projects are repeated an...

AC2 – Towards Understanding Architectural Changes in Rapid Releases

Open source projects are adopting faster release cycles that reflect var...

Mira: A Framework for Static Performance Analysis

The performance model of an application can pro- vide understanding abou...

The Cost and Benefits of Static Analysis During Development

Without quantitative data, deciding whether and how to use static analys...

FMViz: Visualizing Tests Generated by AFL at the Byte-level

Software fuzzing is a strong testing technique that has become the de fa...

Automatically Tailoring Static Analysis to Custom Usage Scenarios

In recent years, there has been significant progress in the development ...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.