Perun: Performance Version System
Tom\'a\v{s} Fiedor, Ji\v{r}\'i Pavela, Adam Rogalewicz and, Tom\'a\v{s} Vojnar

TL;DR
Perun is an open-source performance analysis system that links project versions with performance profiles to detect and localize performance regressions and generate workload inputs for testing.
Contribution
It introduces a comprehensive tool suite integrating profiling, performance change detection, workload generation, and visualization for software performance analysis.
Findings
Effective detection of performance regressions
Localization of performance degradation points
Generation of workload inputs to reveal performance issues
Abstract
In this paper, we present Perun: an open-source tool suite for profiling-based performance analysis. At its core, Perun maintains links between project versions and the corresponding stored performance profiles, which are then leveraged for automated detection of performance changes in new project versions. The Perun tool suite further includes multiple profilers (and is designed such that further profilers can be easily added), a performance fuzz-tester for workload generation, methods for deriving performance models, and numerous visualization methods. We demonstrate how Perun can help developers to analyze their program performance on two examples: detection and localization of a performance degradation and generation of inputs forcing performance issues to show up.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Software Testing and Debugging Techniques · Software Engineering Research
