Automated OS-level Device Runtime Power Management

Date
2014-12-01
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract

Hardware devices on a modern System-on-Chip (SoC), ranging from accelerators to IO controllers, usually account for the largest portion of the chip area. It is therefore vital for Operating Systems (OS) to disable and enable these devices at run time, so that idle devices can enter low-power state timely while meeting user’s performance expectation. This is called device runtime Power Management (PM), for which individual device drivers in commodity OSes are held responsible. Based on the observations of existing drivers and their evolution, we consider counting on drivers for device runtime PM harmful.

We identify three pieces of information essential to device runtime PM, and show that all of them can be obtained without involving drivers, either by using a software inference approach atop existing ARM-based SoC, or more efficiently, by adding one register bit to each device. We thus argue for a structural change to the current Linux runtime PM framework, replacing PM code in each individual driver with one kernel module called central PM agent. We experimentally show that central PM agent is just as effective as hand-tuned driver PM code.

We also present a software tool called PowerAdvisor, as a remedy to simplify driver PM efforts without overhauling the current Linux runtime PM framework. PowerAdvisor analyzes trace generated from historic executions and suggests PM calls to be inserted at certain driver source locations. Although a best-effort tool, PowerAdvisor not only reproduces hand-tuned PM code that already exists in stock drivers, but also correctly suggests PM code never known before . Overall, our experiences show that it is promising to ultimately free driver developers from manual PM.

Description
Degree
Master of Science
Type
Thesis
Keywords
Runtime power management, SoC, OS
Citation

Xu, Chao. "Automated OS-level Device Runtime Power Management." (2014) Master’s Thesis, Rice University. https://hdl.handle.net/1911/87791.

Has part(s)
Forms part of
Published Version
Rights
Copyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.
Link to license
Citable link to this page