Publication Details
Efficient Manipulation of Control Flow Models in Evolving Software
Pavela Jiří, Ing. (DITS)
Rogalewicz Adam, doc. Mgr., Ph.D. (DITS)
Vojnar Tomáš, prof. Ing., Ph.D. (DITS)
Performance analysis, Cross-version performance degradation, Control flow, Perun,
When looking for certain kinds of software bugs, successive versions of software
are compared. Performance-related bugs are a notable example. Methods used for
detecting such bugs are, however, expensive and need to be applied carefully. At
the same time, current software development is rapid, with new software versions
released everyday. In this paper, we aim at two particular ways how to optimize
difference analyses of performance (but possibly other aspects of the software
too) of successive software versions. Namely, we propose (1) an efficient layered
representation of the program control flow spanning across the program history,
and (2) methods for efficient matching of pairs of corresponding functions in
different software versions and for selecting those whose differential analysis
should be performed. We have implemented our approach and performed experiments
on two selected versions of the CPython project. The results indicate that our
approach is a promising direction for improving the performance analysis of real
world programs.
@inproceedings{BUT193280,
author="Tomáš {Fiedor} and Jiří {Pavela} and Adam {Rogalewicz} and Tomáš {Vojnar}",
title="Efficient Manipulation of Control Flow Models in Evolving Software",
booktitle="Eurocast 2024 -- Computer Aided Systems Theory: Extended Abstracts",
year="2025",
series="Lecture Notes in Computer Science",
volume="15172",
pages="412--427",
publisher="Springer International Publishing",
address="Las Palmas de Gran Canaria",
doi="10.1007/978-3-031-82949-9\{_}37",
isbn="978-3-031-82949-9",
url="https://link.springer.com/chapter/10.1007/978-3-031-82949-9_37"
}