Finding Faster Configurations using FLASH

01/07/2018
by   Vivek Nair, et al.
0

Finding good configurations for a software system is often challenging since the number of configuration options can be large. Software engineers often make poor choices about configuration or, even worse, they usually use a sub-optimal configuration in production, which leads to inadequate performance. To assist engineers in finding the (near) optimal configuration, this paper introduces FLASH, a sequential model-based method, which sequentially explores the configuration space by reflecting on the configurations evaluated so far to determine the next best configuration to explore. FLASH scales up to software systems that defeat the prior state of the art model-based methods in this area. FLASH runs much faster than existing methods and can solve both single-objective and multi-objective optimization problems. The central insight of this paper is to use the prior knowledge (gained from prior runs) to choose the next promising configuration. This strategy reduces the effort (i.e., number of measurements) required to find the (near) optimal configuration. We evaluate FLASH using 30 scenarios based on 7 software systems to demonstrate that FLASH saves effort in 100 multi-objective problems respectively by up to several orders of magnitude compared to the state of the art techniques.

READ FULL TEXT

page 11

page 12

research
03/11/2018

Transfer Learning with Bellwethers to find Good Configurations

As software systems grow in complexity, the space of possible configurat...
research
06/04/2021

VEER: Disagreement-Free Multi-objective Configuration

Software comes with many configuration options, satisfying varying needs...
research
06/04/2019

Customizing Pareto Simulated Annealing for Multi-objective Optimization of Control Cabinet Layout

Determining the optimal location of control cabinet components requires ...
research
04/27/2022

We're Not Gonna Break It! Consistency-Preserving Operators for Efficient Product Line Configuration

When configuring a software product line, finding a good trade-off betwe...
research
01/20/2016

Sub-Optimal Multi-Phase Path Planning: A Method for Solving Rubik's Revenge

Rubik's Revenge, a 4x4x4 variant of the Rubik's puzzles, remains to date...
research
10/26/2022

Learning to Configure Computer Networks with Neural Algorithmic Reasoning

We present a new method for scaling automatic configuration of computer ...
research
11/01/2019

Whence to Learn? Transferring Knowledge in Configurable Systems using BEETLE

As software systems grow in complexity and the space of possible configu...

Please sign up or login with your details

Forgot password? Click here to reset