Multi-Objectivizing Software Configuration Tuning (for a single performance concern)

05/31/2021
by   Tao Chen, et al.
15

Automatically tuning software configuration for optimizing a single performance attribute (e.g., minimizing latency) is not trivial, due to the nature of the configuration systems (e.g., complex landscape and expensive measurement). To deal with the problem, existing work has been focusing on developing various effective optimizers. However, a prominent issue that all these optimizers need to take care of is how to avoid the search being trapped in local optima – a hard nut to crack for software configuration tuning due to its rugged and sparse landscape, and neighboring configurations tending to behave very differently. Overcoming such in an expensive measurement setting is even more challenging. In this paper, we take a different perspective to tackle this issue. Instead of focusing on improving the optimizer, we work on the level of optimization model. We do this by proposing a meta multi-objectivization model (MMO) that considers an auxiliary performance objective (e.g., throughput in addition to latency). What makes this model unique is that we do not optimize the auxiliary performance objective, but rather use it to make similarly-performing while different configurations less comparable (i.e. Pareto nondominated to each other), thus preventing the search from being trapped in local optima. Experiments on eight real-world software systems/environments with diverse performance attributes reveal that our MMO model is statistically more effective than state-of-the-art single-objective counterparts in overcoming local optima (up to 42 to achieve the same (or better) performance result.

READ FULL TEXT
research
12/14/2021

MMO: Meta Multi-Objectivization for Software Configuration Tuning

Software configuration tuning is essential for optimizing a given perfor...
research
01/09/2023

Do Performance Aspirations Matter for Guiding Software Configuration Tuning?

Configurable software systems can be tuned for better performance. Lever...
research
10/20/2017

Understanding and Auto-Adjusting Performance-Related Configurations

Modern software systems are often equipped with hundreds to thousands of...
research
10/03/2020

Automated Performance Tuning for Highly-Configurable Software Systems

Performance is an important non-functional aspect of the software requir...
research
06/11/2023

Predicting Software Performance with Divide-and-Learn

Predicting the performance of highly configurable software systems is th...
research
01/18/2022

Lifelong Dynamic Optimization for Self-Adaptive Systems: Fact or Fiction?

When faced with changing environment, highly configurable software syste...
research
12/28/2020

A Comprehensive Empirical Evaluation of Generating Test Suites for Mobile Applications with Diversity

Context: In search-based software engineering we often use popular heuri...

Please sign up or login with your details

Forgot password? Click here to reset