CPU Futures: Scheduler support for application management of CPU contention

Loading...
Thumbnail Image

Date

Authors

Meehean, Joe T.
Arpaci-Dusseau, Andrea C.
Arpaci-Dusseau, Remzi H.
Livny, Miron

Advisors

License

DOI

Type

Technical Report

Journal Title

Journal ISSN

Volume Title

Publisher

University of Wisconsin-Madison Department of Computer Sciences

Grantor

Abstract

We introduce CPU Futures, a system designed to enable application control of scheduling for server workloads, even during system overload. CPU Futures contains two novel components: an in-kernel herald that anticipates application CPU performance degradation and a user-level feedback controller that responds to these predictions on behalf of the application. In combination, these two subsystems enable fine-grained application control of scheduling; with this control applications can define their own policies for avoiding or mitigating performance degradation under overload. We implement CPU Futures within two different Linux schedulers, and show its utility by building two case studies on top of the system: Empathy, which limits the CPU interference caused by low-importance batch programs, and SheepDog, which prevents web requests from starving on a heavily loaded web server. Through experiment, we find that CPU Futures are not only useful, but also have a low-overhead.

Description

Keywords

Related Material and Data

Citation

TR1684

Sponsorship

Endorsement

Review

Supplemented By

Referenced By