Peafowl: In-application CPU scheduling to reduce power consumption of in-memory key-value stores

Esmail Asyabi, Azer Bestavros, Erfan Sharafzadeh, Timothy Zhu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The traffic load sent to key-value (KV) stores varies over long timescales of hours to short timescales of a few microseconds. Long-term variations present the opportunity to save power during low or medium periods of utilization. Several techniques exist to save power in servers, including feedback-based controllers that right-size the number of allocated CPU cores, dynamic voltage and frequency scaling (DVFS), and c-state (idle-state) mechanisms. In this paper, we demonstrate that existing power saving techniques are not effective for KV stores. This is because the high rate of traffic even under low load prevents the system from entering low power states for extended periods of time. To achieve power savings, we must unbalance the load among the CPU cores so that some of them can enter low power states during periods of low load. We accomplish this by introducing the notion of in-application CPU scheduling. Instead of relying on the kernel to schedule threads, we pin threads to bypass the kernel CPU scheduler and then perform the scheduling within the KV store application. Our design, Peafowl, is a KV store that features an in-application CPU scheduler that monitors the load to learn the workload characteristics and then scales the number of active CPU cores when the load drops, leading to notable power savings during low or medium periods of utilization. Our experiments demonstrate that Peafowl uses up to 40 - 54% lower power than state of the art approaches such as Rubik and µDPM.

Original languageEnglish (US)
Title of host publicationSoCC 2020 - Proceedings of the 2020 ACM Symposium on Cloud Computing
PublisherAssociation for Computing Machinery, Inc
Pages150-164
Number of pages15
ISBN (Electronic)9781450381376
DOIs
StatePublished - Oct 12 2020
Event11th ACM Symposium on Cloud Computing, SoCC 2020 - Virtual, Online, United States
Duration: Oct 19 2020Oct 21 2020

Publication series

NameSoCC 2020 - Proceedings of the 2020 ACM Symposium on Cloud Computing

Conference

Conference11th ACM Symposium on Cloud Computing, SoCC 2020
CountryUnited States
CityVirtual, Online
Period10/19/2010/21/20

All Science Journal Classification (ASJC) codes

  • Information Systems
  • Software
  • Artificial Intelligence

Fingerprint Dive into the research topics of 'Peafowl: In-application CPU scheduling to reduce power consumption of in-memory key-value stores'. Together they form a unique fingerprint.

Cite this