Automated Identification of Performance Changes at Code Level

Reichelt, David Georg and Kühne, Stefan and Hasselbring, Wilhelm (2023) Automated Identification of Performance Changes at Code Level. In: Proceedings - 2022 IEEE 22nd International Conference on Software Quality, Reliability and Security, QRS 2022 :. IEEE International Conference on Software Quality, Reliability and Security, QRS . IEEE, pp. 916-925. ISBN 9781665477048

[thumbnail of 2303.14256]
Text (2303.14256) - Other
Available under License None.

Download (0B)
[thumbnail of 2303.14256]
Text (2303.14256)
2303.14256.pdf - Other
Available under License None.

Download (430kB)

Abstract

To develop software with optimal performance, even small performance changes need to be identified. Identifying performance changes is challenging since the performance of software is influenced by non-deterministic factors. Therefore, not every performance change is measurable with reasonable effort. In this work, we discuss which performance changes are measurable at code level with reasonable measurement effort and how to identify them. We present (1) an analysis of the boundaries of measuring performance changes, (2) an approach for determining a configuration for reproducible performance change identification, and (3) an evaluation comparing of how well our approach is able to identify performance changes in the application server Jetty compared with the usage of Jetty's own performance regression benchmarks.Thereby, we find (1) that small performance differences are only measurable by fine-grained measurement workloads, (2) that performance changes caused by the change of one operation can be identified using a unit-test-sized workload definition and a suitable configuration, and (3) that using our approach identifies small performance regressions more efficiently than using Jetty's performance regression benchmarks.

Item Type:
Contribution in Book/Report/Proceedings
ID Code:
215888
Deposited By:
Deposited On:
28 May 2024 14:05
Refereed?:
Yes
Published?:
Published
Last Modified:
17 Jun 2024 23:48