Reducing the Power Consumption of Mobile Devices
Joint Reserch with Wei Gao
As the capabilities and storage of mobile devices have increased, the
energy demand on their batteries has increased correspondingly. A decade ago, users might have
had to re-charge their mobile devices once a week; now it is
common to have to re-charge them daily.
Research has shown that an application's
user interface (GUI) is typically the piece of software that is
the biggest consumer of power in a mobile device. One application-independent
part of the GUI that consumes power is event handling. In existing
mobile devices, GUIs must use a polling loop that constantly rouses the
CPU to determine if any events have occurred. This prevents the CPU from
being put into energy-conserving states.
We are investigating a push-model
for event handling in which the kernel "pushes" events to applications
when it receives event interrupts from devices, rather than the application
sitting in a polling loop that "pulls" events from the kernel. The
advantage of a kernel push-model is that a device can be put in lower power
sleep modes until the
user actually generates events. In order to realize the full benefits of
the push model, event handling must be moved into the kernel, which
necessitates the development of kernel routines for event dispatching and
the development of a kernel-level
display server that allows the process scheduler to know which processes are
GUIs, so that it can deschedule them as needed.
We are modifying the Android runtime (ART) to work with our push model so
that we can profile actual apps to determine how much power savings, and
potentially reduced latency, can be achieved with our proposed model.
The goals of this research include:
- Developing a kernel-level push-model for event handling and a
kernel-level display server that supports this push-model.
- Modifying the Android ART so that it works with the kernel-level
- Profiling apps to determine the amount of power savings and reduced
latency that can be achieved with the push model.
This project is being supported by the National Science Foundation under Grant No. CNS-1617198.
- S. Marz and B. Vander Zanden. Reducing Power Consumption and Latency in Mobile Devices Using an Event Stream Model. In ACM Transactions
on Embedded Computing, Nov. 2016, 16(1).
- S. Marz, B. Vander Zanden, and W. Gao. Reducing Event Latency and Power Consumption in Mobile Devices by Using a Kernel-Level Display Server. Submitted for publication.