Auto-Tuning of Scalable Systems

The performance and dependability of scalable distributed systems often depends on an adequate configuration for the specific workload, computing environment, and application requirements. However, systems often offer many options that can be configured and each option usually can be set to a large range of values. Moreover, as workloads and environments change dynamically, the optimal configuration of a system usually changes as well. We, therefore, work on novel mechanisms for automatically tuning the configurations of scalable distributed systems. Our goal is to support systems in efficiently adjusting configurations to variable workloads and node failures dynamically. Key techniques used for this include runtime profiling, performance modeling, optimization, and time series forecasting.

Ongoing Research

We currently work on multiple topics in this area: