Towards efficient tuning of computer systems: auto-structured Bayesian optimization from system metrics
Optimizing complex computer systems, like databases, requires careful tuning of numerous user-configurable parameters. This process is often a laborious trial-and-error effort, motivating the development of automated tuning systems (auto-tuners). However, conventional black-box auto-tuners, which disregard the wealth of expert knowledge embedded within system designs, often require a prohibitively large number of full system evaluations. While Structured Bayesian Optimization (SBO), as proposed in (Dalibard et al., 2017), offers a promising alternative by incorporating probabilistic performance models, it suffers from two limitations. The first is the difficulty of designing these models, which requires expertise in both the system and probabilistic machine learning. The second is scalability issues when dealing with complex system structures. This dissertation introduces a novel SBO framework that leverages system health metrics and eliminates the need for hand-designed probabilistic models. Our approach allows experts to define high-level relationships between configurations, health metrics, and the tuning objective, while simultaneously learning causal structures from system health metrics to augment expert intuition. Crucially, this requires a scalable framework capable of handling complex probabilistic structures. We first present Bayesian Optimization with Bayesian Networks (BoBn), a library that facilitates expressing high-level system knowledge through a graph-based API. BoBn translates this structural information into a probabilistic model that guides the optimizer, supporting a wide range of user-defined or automatically generated models within its graph. Furthermore, BoBn adds multi-objective optimization capabilities to SBO. Its key contribution is its ability to leverage GPUs and accelerators with intelligent memory management, significantly extending the scalability of SBO beyond existing industry tools. Next, we introduce BoGraph, an extension that automates structure discovery for SBO. BoGraph integrates causal structure discovery with BoBn, automatically inferring high-level structural information from system health metrics through causal analysis. This integration makes BoGraph as easy to use as a standard black-box optimizer, while still benefiting from the advantages of structured optimization and providing visual feedback on the interplay between parameters and internal system state. The combined use of BoGraph and BoBn provides an efficient and user-friendly auto-tuning solution for complex computer systems with a large number of configurable parameters. This dissertation demonstrates the advantages of close integration between the systems and machine learning communities.
Structured Bayesian Optimization, Computer system optimization
Networked Digital Library of Theses and Dissertations