EOS: Automatic In-vivo Evolution of Kernel Policies for Better Performance
Yan Cui, Quan Chen, Junfeng Yang

TL;DR
EOS automatically evolves kernel policies and parameters in vivo on real workloads, bridging the gap between kernel developers and users to improve system performance without requiring user domain knowledge.
Contribution
It introduces a system that enables automatic, in-vivo tuning of kernel policies and parameters through a simple API, policy cache, and hierarchical search engine.
Findings
EOS improves performance across four Linux subsystems.
It is easy to use for kernel developers and users.
Effective in tuning policies for real-world workloads.
Abstract
Today's monolithic kernels often implement a small, fixed set of policies such as disk I/O scheduling policies, while exposing many parameters to let users select a policy or adjust the specific setting of the policy. Ideally, the parameters exposed should be flexible enough for users to tune for good performance, but in practice, users lack domain knowledge of the parameters and are often stuck with bad, default parameter settings. We present EOS, a system that bridges the knowledge gap between kernel developers and users by automatically evolving the policies and parameters in vivo on users' real, production workloads. It provides a simple policy specification API for kernel developers to programmatically describe how the policies and parameters should be tuned, a policy cache to make in-vivo tuning easy and fast by memorizing good parameter settings for past workloads, and a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Data Storage Technologies · Parallel Computing and Optimization Techniques · Cloud Computing and Resource Management
