Tradeoffs in modeling performance of highly configurable software systems

被引:30
|
作者
Kolesnikov, Sergiy [1 ]
Siegmund, Norbert [2 ]
Kastner, Christian [3 ]
Grebhahn, Alexander [1 ]
Apel, Sven [1 ]
机构
[1] Univ Passau, Chair Software Engn, Passau, Germany
[2] Bauhaus Univ Weimar, Chair Intelligent Software Syst, Weimar, Germany
[3] Carnegie Mellon Univ, Sch Comp Sci, Pittsburgh, PA 15213 USA
来源
SOFTWARE AND SYSTEMS MODELING | 2019年 / 18卷 / 03期
基金
美国国家科学基金会;
关键词
Performance-influence models; Highly configurable software systems; Performance prediction; Feature interactions; Variability; Software product lines; Machine learning; PREDICTION;
D O I
10.1007/s10270-018-0662-9
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Modeling the performance of a highly configurable software system requires capturing the influences of its configuration options and their interactions on the system's performance. Performance-influence models quantify these influences, explaining this way the performance behavior of a configurable system as a whole. To be useful in practice, a performance-influence model should have a low prediction error, small model size, and reasonable computation time. Because of the inherent tradeoffs among these properties, optimizing for one property may negatively influence the others. It is unclear, though, to what extent these tradeoffs manifest themselves in practice, that is, whether a large configuration space can be described accurately only with large models and significant resource investment. By means of 10 real-world highly configurable systems from different domains, we have systematically studied the tradeoffs between the three properties. Surprisingly, we found that the tradeoffs between prediction error and model size and between prediction error and computation time are rather marginal. That is, we can learn accurate and small models in reasonable time, so that one performance-influence model can fit different use cases, such as program comprehension and performance prediction. We further investigated the reasons for why the tradeoffs are marginal. We found that interactions among four or more configuration options have only a minor influence on the prediction error and that ignoring them when learning a performance-influence model can save a substantial amount of computation time, while keeping the model small without considerably increasing the prediction error. This is an important insight for new sampling and learning techniques as they can focus on specific regions of the configuration space and find a sweet spot between accuracy and effort. We further analyzed the causes for the configuration options and their interactions having the observed influences on the systems' performance. We were able to identify several patterns across subject systems, such as dominant configuration options and data pipelines, that explain the influences of highly influential configuration options and interactions, and give further insights into the domain of highly configurable systems.
引用
收藏
页码:2265 / 2283
页数:19
相关论文
共 50 条
  • [1] Tradeoffs in modeling performance of highly configurable software systems
    Sergiy Kolesnikov
    Norbert Siegmund
    Christian Kästner
    Alexander Grebhahn
    Sven Apel
    Software & Systems Modeling, 2019, 18 : 2265 - 2283
  • [2] An Empirical Study on Performance Bugs for Highly Configurable Software Systems
    Han, Xue
    Yu, Tingting
    ESEM'16: PROCEEDINGS OF THE 10TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT, 2016,
  • [3] Analyzing the Impact of Workloads on Modeling the Performance of Configurable Software Systems
    Muehlbauer, Stefan
    Sattler, Florian
    Kaltenecker, Christian
    Dorn, Johannes
    Apel, Sven
    Siegmund, Norbert
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 2085 - 2097
  • [4] Waffle: A Novel Feature Modeling Language for Highly-configurable Software Systems
    Prokopets, Volodymyr
    Pukhkaiev, Dmytro
    Assmann, Uwe
    2024 IEEE INTERNATIONAL BLACK SEA CONFERENCE ON COMMUNICATIONS AND NETWORKING, BLACKSEACOM 2024, 2024, : 382 - 385
  • [5] Performance Analysis for Highly-Configurable Systems
    Kastner, Christian
    SPLC'19: PROCEEDINGS OF THE 23RD INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL A, 2020, : XVIII - XVIII
  • [6] Detecting and Reducing Redundancy in Software Testing for Highly Configurable Systems
    Marijan, Dusica
    Sen, Sagar
    2017 IEEE 18TH INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING (HASE 2017), 2017, : 96 - 99
  • [7] Mastering uncertainty in performance estimations of configurable software systems
    Johannes Dorn
    Sven Apel
    Norbert Siegmund
    Empirical Software Engineering, 2023, 28
  • [8] Mastering uncertainty in performance estimations of configurable software systems
    Dorn, Johannes
    Apel, Sven
    Siegmund, Norbert
    EMPIRICAL SOFTWARE ENGINEERING, 2023, 28 (02)
  • [9] Performance evolution of configurable software systems: an empirical study
    Christian Kaltenecker
    Stefan Mühlbauer
    Alexander Grebhahn
    Norbert Siegmund
    Sven Apel
    Empirical Software Engineering, 2023, 28
  • [10] Performance evolution of configurable software systems: an empirical study
    Kaltenecker, Christian
    Muehlbauer, Stefan
    Grebhahn, Alexander
    Siegmund, Norbert
    Apel, Sven
    EMPIRICAL SOFTWARE ENGINEERING, 2023, 28 (06)