Finding Product Line Configurations with High Performance by Random Sampling

Highly configurable systems, such as software product lines, have many options for customization. This raises the challenge to find good performing configurations for an anticipated workload. As configuration spaces are huge, it is infeasible to benchmark all configurations to find an optimal one. Prior work focused on building performance models to predict and optimize configurations; we randomly sample and recursively search a configuration space to find good configurations without constructing a prediction model. Consequently, our algorithms are simpler and have noticeably higher accuracy and efficiency.

[1]  Welch Bl THE GENERALIZATION OF ‘STUDENT'S’ PROBLEM WHEN SEVERAL DIFFERENT POPULATION VARLANCES ARE INVOLVED , 1947 .

[2]  B. L. Welch The generalisation of student's problems when several different population variances are involved. , 1947, Biometrika.

[3]  Sheldon B. Akers,et al.  Binary Decision Diagrams , 1978, IEEE Transactions on Computers.

[4]  Allan G. Bluman,et al.  Elementary Statistics: A Step By Step Approach , 1980 .

[5]  Calvin C. Gotlieb,et al.  A unifying model of physical databases , 1982, TODS.

[6]  Surajit Chaudhuri,et al.  An overview of query optimization in relational systems , 1998, PODS.

[7]  Surajit Chaudhuri,et al.  Automated Selection of Materialized Views and Indexes in SQL Databases , 2000, VLDB.

[8]  Assaf Schuster,et al.  Memory Efficient All-Solutions SAT Solver and Its Application for Reachability Analysis , 2004, FMCAD.

[9]  Antonio Ruiz Cortés,et al.  A First Step Towards a Framework for the Automated Analysis of Feature Models , 2006 .

[10]  Marc Thurley,et al.  sharpSAT - Counting Models with Advanced Component Caching and Implicit BCP , 2006, SAT.

[11]  Martin Gebser,et al.  Conflict-Driven Answer Set Enumeration , 2007, LPNMR.

[12]  Donald D. Cowan,et al.  Efficient compilation techniques for large scale feature models , 2008, GPCE '08.

[13]  Douglas C. Schmidt,et al.  Filtered Cartesian Flattening: An Approximation Technique for Optimally Selecting Features while Adhering to Resource Constraints , 2008, SPLC.

[14]  Bart Selman,et al.  Satisfiability Solvers , 2008, Handbook of Knowledge Representation.

[15]  Toby Walsh,et al.  Handbook of Satisfiability: Volume 185 Frontiers in Artificial Intelligence and Applications , 2009 .

[16]  Donald D. Cowan,et al.  S.P.L.O.T.: software product lines online tools , 2009, OOPSLA Companion.

[17]  Thomas Leich,et al.  FeatureIDE: A tool framework for feature-oriented software development , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[18]  Yinglin Wang,et al.  A genetic algorithm for optimized feature selection with resource constraints in software product lines , 2011, J. Syst. Softw..

[19]  Klaus Pohl,et al.  A performance comparison of contemporary algorithmic approaches for automated analysis operations on feature models , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[20]  Don S. Batory,et al.  Feature interactions, products, and composition , 2011, GPCE '11.

[21]  Gunter Saake,et al.  Predicting performance via automated feature-interaction detection , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[22]  Tim Menzies,et al.  Scalable product line configuration: A straw to break the camel's back , 2013, 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[23]  Sven Apel,et al.  Scalable analysis of variable software , 2013, ESEC/FSE 2013.

[24]  Gunter Saake,et al.  Feature-Oriented Software Product Lines , 2013, Springer Berlin Heidelberg.

[25]  Sven Apel,et al.  Variability-aware performance prediction: A statistical learning approach , 2013, 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[26]  Tim Menzies,et al.  On the value of user preferences in search-based software engineering: A case study in software product lines , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[27]  Supratik Chakraborty,et al.  A Scalable Approximate Model Counter , 2013, CP.

[28]  Sharad Malik,et al.  All-SAT Using Minimal Blocking Clauses , 2014, 2014 27th International Conference on VLSI Design and 2014 13th International Conference on Embedded Systems.

[29]  Robert A. van de Geijn,et al.  Understanding performance stairs: elucidating heuristics , 2014, ASE.

[30]  Ferat Sahin,et al.  A survey on feature selection methods , 2014, Comput. Electr. Eng..

[31]  Derek Rayside,et al.  Comparison of exact and approximate multi-objective optimization for software product lines , 2014, SPLC.

[32]  Yi Zhang,et al.  Performance Prediction of Configurable Software Systems by Fourier Learning (T) , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[33]  Sven Apel,et al.  Performance-influence models for highly configurable systems , 2015, ESEC/SIGSOFT FSE.

[34]  Yves Le Traon,et al.  Combining Multi-Objective Search and Constraint Solving for Configuring Large Software Product Lines , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[35]  Sven Apel,et al.  Cost-Efficient Sampling for Performance Prediction of Configurable Systems (T) , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[36]  Takehide Soh,et al.  Implementing Efficient All Solutions SAT Solvers , 2015, ACM J. Exp. Algorithmics.

[37]  Sven Apel,et al.  A Comparison of 10 Sampling Algorithms for Configurable Systems , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).