Conference PaperPDF Available

MPower: gain back your Android battery life!

Authors:

Abstract and Figures

Nowadays, mobile devices are becoming more flexible and rich in functionalities. As already presented in [6] those devices are highly influenced by constraints, mainly regarding power management. In fact, mobile batteries are limited in time and there are no efficient methods able to manage power consumption. Even knowing the device Time To Live (TTL) is currently left to the user experience. In this paper, we presented MPower, a system able to predict the mobile device TTL, providing also the user with suggestions on the optimal device configuration w.r.t. the desired TTL. This allows the user to manage the available power resources, according to his/her needs, avoiding power wasting.
Content may be subject to copyright.
MPower: Gain Back Your Android
Battery Life!
Matteo Ferroni
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
matteo.ferroni@mail.polimi.it
Donatella Sciuto
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
sciuto@elet.polimi.it
Andrea Cazzola
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
andrea.cazzola@mail.polimi.it
Marco D. Santambrogio
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
santambr@elet.polimi.it
Domenico Matteo
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
matteo@elet.polimi.it
Alessandro A. Nacci
Politecnico di Milano
Via Ponzio 34/5
Milano, 20133 IT
nacci@elet.polimi.it
Permission to make digital or hard copies of part or all of this work for
personal or classroom use is granted without fee provided that copies are not
made or distributed for profit or commercial advantage and that copies bear
this notice and the full citation on the first page. Copyrights for third-party
components of this work must be honored. For all other uses, contact the
owner/author(s). Copyright is held by the author/owner(s).
UbiComp’13 Adjunct, September 8–12, 2013, Zurich, Switzerland.
ACM 978-1-4503-2215-7/13/09.
http://dx.doi.org/10.1145/2494091.2494147
Abstract
Nowadays, mobile devices are becoming more flexible and
rich in functionalities. As already presented in [6] those
devices are highly influenced by constraints, mainly
regarding power management. In fact, mobile batteries
are limited in time and there are no efficient methods able
to manage power consumption. Even knowing the device
Time To Live (TTL) is currently left to the user
experience. In this paper, we presented MPower, a system
able to predict the mobile device TTL, providing also the
user with suggestions on the optimal device configuration
w.r.t. the desired TTL. This allows the user to manage
the available power resources, according to his/her needs,
avoiding power wasting.
Author Keywords
Mobile, Power modeling
General Terms
Mobile, Context-awareness
ACM Classification Keywords
C.3.f [Special-Purpose and Application-Based Systems]:
Signal processing systems.
Introduction
Mobile devices, e.g., smartphones, PDAs and tablets,
increase in number of functionalities in the recent years,
making them appealing to a wide range of users. Thus,
even if they are becoming more and more powerful in term
of supported computation, they are constrained w.r.t. the
power consumption. In fact, batteries are limited in time
and their Time To Live (TTL) is highly influenced by the
current phone state, the user usage profile and external
conditions, e.g., signal strength. As a consequence, since
these devices are subject to sudden and unpredictable
changes of their conditions, a method for computing the
device TTL is necessary. A practical way of predicting the
TTL is to model the battery discharging curve, since TTL
coincides with the time the battery level reaches zero level.
Android OS [1], one of the most popular mobile OS, only
provides a percentage as remaining power indicator,
leaving to the user experience and knowledge to determine
the TTL of its mobile device. In order to know a TTL, the
discharge curve is needed, and consequently, a power
model of the device. Literature on mobile power
consumption estimation provides a wide range of works
about power modeling [6]. Most of them use benchmark
applications on a single device to gather data, providing
model which hardly generalize to the burden of devices
currently available. Recently, the need for considering
users’ behaviour is highlighted [7]. A first attempt in this
direction has been done by Kang et al. [4], where real
data are used to build a personalized power model. They
do not take into account power consumption specific to
mobile device, which can behave differently even with a
given user profile.
In this paper, we present MPower, the final
implementation of the idea presented in [3], i.e., a system
able to predict accurately an Android-based mobile device
TTL, without any dedicated hardware tool or modification
of the operating system. The model is focused on the
hardware component power consumption, rather than
users’ behavior, allowing comparison among devices. The
whole architecture is based on a mobile application
implementing a low power logger and a remote server,
where the main computations are offloaded.
System Architecture
MPower relies on a system architecture based on two
main components: an Android client logging application,
running on the mobile device, and a remote server, for the
data storage and the model computation. In Fig. 1the
information flow is presented. At first, the application on
the mobile device gathers data related to energy
consumption, e.g., battery level, CPU frequency, screen
brightness, and sends them to a remote cloud server,
responsible for the power model generation. Finally, the
model is sent back to the device and the currently
estimated TTL is shown by the MPower client.
Figure 1: The MPower system architecture
Power Model Generation
The power consumption model estimation phase is
performed on data gathered by the MPower Android app:
no controlled environment experiments are required.
MPower relies only on the everyday usage data, providing
a flexible system, adaptive w.r.t. new devices and new OS
versions and even able to handle battery degradation
effects. Data gathered from the device may be grouped
into two main categories: controllable actuators values
and uncontrollable variables. The first group determines
the device configurations: each assignment of actuators
values determines device state. For instance, a
configuration is WiFi OFF, 3G ON, bluetooth OFF, etc.
Given a configuration, the uncontrollable variables, such
as time elapsed, CPU usage, etc., are used as input for
the TTL prediction. For each configuration, a power
consumption model is computed, estimating an ARX
model [5]. The power model is sent to the device as a
look-up-table, containing TTLs corresponding to each
configuration. Thus, the mobile device does not have to
perform any further computation, but a simple query on
the look-up table.
The Android application
A preliminary version of MPower app is available on the
Google Play store [2] and the complete version will be
released in September1. Currently, it logs the phone
information and allows the user to visualize the phone
usage statistics. In the final version it will provide also the
TTL in the current configuration and will offer suggestion
for achieving the desired TTL by changing configuration.
Fig. 2(a) presents the application main page screenshot:
the battery TTL for the current configuration is reported
in the center of the screen, while on the lower part it is
possible to access phone statistics (buttons “Reports” and
“Charts”) and to allow the phone to refine the model if
needed (button “Collecting new data”). The button “Set
battery life” leads to the page in Fig. 2(b), where the user
1Further information available at http://mpower.necst.it/
can change the configuration, to modify TTL. Moreover,
the user can use the available filters to set constraints on
functionalities the device must provide.
Figure 2: MPower screenshots of the main page (a) and of the
configuration selection page (b)
Figure 3: MPower statistics on data usage distribution (a) and
battery consumption (b)
Fig. 3shows the third MPower feature: the visualization
of the device usage statistics. Specifically, Fig. 3(a)
reports a pie-chart with the different networks data usage
distribution, while Fig. 3(b) visualize the overall network
data usage and the power consumption.
MPower functionalities allows the user to keep the battery
consumption under control, without having an excessive
overhead in power consumption. In fact, since it runs
continuously on the mobile device, a low impact on the
battery is required. For this reason, to design a
non-power-hungry application, the following aspects have
been addressed during the application developing phase:
sampling frequency Sampling the device status every
ten seconds allow the application not to be listed in
the Android OS most battery draining apps;
wake-lock The application does not make use of any
wake-lock, which would requires the device to leave
the deep-sleep mode (an energy saving state);
computation The model estimation and adaptation is up
to the remote server. To display the TTL, the only
computation required by the device is a single query
on a lookup table.
data transfer Samples are logged on small files, to avoid
power consuming accesses to a single big file. These
information are then compressed and encrypted, to
create smaller packets, and are sent to the server
only if the device is on charge.
Conclusion
We presented MPower, an Android app for power
management on mobile devices. It is able to provide the
current TTL of the phone, as well as to suggest
configurations to save power and extend the battery life,
by basing on a power consumption model. It also provides
phone usage statistics, enhancing the user awareness on
the mobile power consumption. The application logs data
about the device, sends them to a server, which sends
back the estimated power model, ultimately providing the
TTL to the user. Thanks to this architecture the system
is power-friendly, flexible w.r.t. new phones and adaptive
to the specific user.
References
[1] Android os: http://www.android.com/.
[2] Mpower : https://play.google.com/store/apps/
details?id=org.morphone.mpower.
[3] Bonetto, A., Ferroni, M., Matteo, D., Nacci, A.,
Mazzucchelli, M., Sciuto, D., and Santambrogio, M.
Mpower: Towards an adaptive power management
system for mobile devices. In CSE (2012), 318–325.
[4] Kang, J.-M., seok Seo, S., and Hong, J. W.-K.
Personalized battery lifetime prediction for mobile
devices based on usage patterns. Journal of
Computing Science and Engineering 5, 4 (2011),
338–345.
[5] Ljung, L. System identification: theory for the user.
Prentice Hall 7632 (1987).
[6] Vallina-Rodriguez, N., and Crowcroft, J. Energy
management techniques in modern mobile handsets.
Communications Surveys Tutorials, IEEE PP, 99
(2012), 1–20.
[7] Vallina-Rodriguez, N., Hui, P., Crowcroft, J., and
Rice, A. Exhausting battery statistics: understanding
the energy demands on mobile handsets. In 2nd ACM
SIGCOMM workshop, MobiHeld ’10, ACM (New York,
NY, USA, 2010), 9–14.
Article
In the last few years, multi-core processors entered into the domain of embedded systems: this, together with virtualization techniques, allows multiple applications to easily run on the same System-on-Chip (SoC). As power consumption remains one of the most impacting costs on any digital system, several approaches have been explored in literature to cope with power caps, trying to maximize the performance of the hosted applications. In this paper, we present some preliminary results and opportunities towards a performance-aware power capping orchestrator for the Xen hypervisor. The proposed solution, called XeMPUPiL, uses the Intel Running Average Power Limit (RAPL) hardware interface to set a strict limit on the processor's power consumption, while a software-level Observe-Decide-Act (ODA) loop performs an exploration of the available resource allocations to find the most power efficient one for the running workload. We show how XeMPUPiL is able to achieve higher performance under different power caps for almost all the different classes of benchmarks analyzed (e.g., CPU-, memory-and IO-bound).
Article
Autonomicity is a golden feature when dealing with a high level of complexity. This complexity can be tackled partitioning huge systems in small autonomous modules, i.e., agents. Each agent then needs to be capable of extracting knowledge from its environment and to learn from it, in order to fulfill its goals: this could not be achieved without proper modeling techniques that allow each agent to gaze beyond its sensors. Unfortunately, the simplicity of agents and the complexity of modeling do not fit together, thus demanding for a third party to bridge the gap. Given the opportunities in the field, the main contributions of this work are twofold: (1) we propose a general methodology to model resource consumption trends and (2) we implemented it into MARC, a Cloud-service platform that produces Models-as-a-Service, thus relieving self-aware agents from the burden of building their custom modeling framework. In order to validate the proposed methodology, we set up a custom simulator to generate a wide spectrum of controlled traces: this allowed us to verify the correctness of our framework from a general and comprehensive point of view.
Conference Paper
With the increasing popularity of smartphones, battery life is among the most crucial issues for mobile users. This paper presents a crowdsensing-based use guide to extend the lifetime of smartphones. The system answers a question raised by phone usage: Why is my phone battery draining quickly compared to others phones despite running the same applications? The proposed system pinpoints the major causes of battery drain in terms of both hardware and software aspects. In relation to the hardware aspect, the system quantifies degree of battery aging as a ratio metric; an estimate of 50% indicates that the battery is at half of full capacity, meaning that battery usage time is approximately half that of a new battery. The system automatically profiles battery age based on charging duration data collected by crowdsensing. In its software aspect, the system guides phone configuration to extend application usage times. The system mines large-scale usage data to infer the major energy holes in a user's phone usage. The scheme works autonomously without user intervention and does not require any external equipment. Extensive evaluation with 3,000 users demonstrated that the proposed scheme successfully extends battery life for typical mobile users.
Article
Mobile systems such as smartphones and tablets are re-adopting swapping—a mature but rarely used OS feature—to extend memory capacity without adding more DRAM, especially low-end devices. This resurgence of swapping in mobile systems has inspired both traditional “off-the-rack” schemes and new approaches based on compression and new hardware. Their vastly different designs, however, make them difficult for system designers to measure, compare and revise. In this paper, we first propose an evaluation framework, SwapBench, to appraise swap schemes and focus on two important but overlooked metrics: application launch and switch. And cross-validation with microbenchmarks shows that SwapBench is accurate. Then, we present the first comprehensive evaluation from three dimensions: system architecture, application launch time and application switch delays, to understand and summarize the impacts of swapping in mobile systems. Finally, based on the findings from SwapBench, we give our conclusion and suggestions of different approaches to swapping in mobile systems.
Conference Paper
In the last years, the concept of smart buildings has been proposed and proved to be an effective solution to tackle the problem of reducing the power consumption of complex (both residential and commercial) buildings, while providing the users with a very high level of comfort. In this context, knowing the exact position of users inside the buildings has been identified as a needed feature to optimize the behavior of the building itself. Recently, using the occupants mobile devices as sensors has been validated as an effective solution to have accurate occupancy detection systems, even if no energy efficient solution in therm of battery consumption has been found so far. On the contrary, with this work, we present BLUE-SENTINEL, an accurate and power efficient method to identify the occupants of each room of a smart building using mobile devices as source of information. The proposed approach faces the occupancy detection problem with a good accuracy by exploiting iBeacon, a very recent low-power technology proposed by Apple. In particular, since the iBeacon protocol is built upon Bluetooth Low Energy (BLE), it represents a very highly power-efficient solution. In addition to this, the iBeacon technology is characterized by a good level of compatibility and portability, supporting both iOS- and Android-based devices. The proposed approach has been validated in a real environment with a prototype system released as open source showing how this technology is suitable for the occupancy detection in a smart building.
Conference Paper
Full-text available
Resources such as quantities of transistors and memory, the level of integration and the speed of components have increased dramatically over the years. Even though the technologies have improved, we continue to apply outdated approaches to our use of these resources. Key computer science abstractions have not changed since the 1960’s. Therefore this is the time for a fresh approach to the way systems are designed and used.
Conference Paper
In the last decade we have witnessed the birth and dramatic growth of mobile devices, from cellular- to smart- phones. Despite the huge amount of information achievable from an always-connected reality, researchers that work in the mobile devices field fight against the impossibility to explore, inspect and test their work on such a vast set of possible environments, use case scenarios, hardware and software platforms the smart mobile world is composed of. This pushed the need of a wide open dataset – similar to the ones that boosted the recent developments in many scientific fields – of real world data coming from devices in their real usage context, properly anonymized and conveniently organized to be searchable and accessible. In this paper, we present a platform that brings such a dataset to researchers of the next generation of mobile devices.
Article
Full-text available
Nowadays mobile devices are used for various applications such as making voice/video calls, browsing the Internet, listening to music etc. The average battery consumption of each of these activities and the length of time a user spends on each one determines the battery lifetime of a mobile device. Previous methods have provided predictions of battery lifetime using a static battery consumption rate that does not consider user characteristics. This paper proposes an approach to predict a mobile device's available battery lifetime based on usage patterns. Because every user has a different pattern of voice calls, data communication, and video call usage, we can use such usage patterns for personalized prediction of battery lifetime. Firstly, we define one or more states that affect battery consumption. Then, we record time-series log data related to battery consumption and the use time of each state. We calculate the average battery consumption rate for each state and determine the usage pattern based on the time-series data. Finally, we predict the available battery time based on the average battery consumption rate for each state and the usage pattern. We also present the experimental trials used to validate our approach in the real world.
Article
Full-text available
Managing energy efficiently is paramount in modern smartphones. The diverse range of wireless interfaces and sensors, and the increasing popularity of power-hungry applications that take advantage of these resources can reduce the battery life of mobile handhelds to few hours of operation. The research community, and operating system and hardware vendors found interesting optimisations and techniques to extend the battery life of mobile phones. However, the state of the art of lithium-ion batteries clearly indicates that energy efficiency must be achieved both at the hardware and software level. In this survey, we will cover the software solutions that can be found in the research literature between 1999 and May 2011 at six different levels: energy-aware operating systems, efficient resource management, the impact of users' interaction patterns with mobile devices and applications, wireless interfaces and sensors management, and finally the benefits of integrating mobile devices with cloud computing services.
Conference Paper
Full-text available
Due to their wide distribution and their growth in functionalities, mobile devices are the interaction point between users and the surrounding environment. Nevertheless, their resources are limited and variable over time, both in terms of performance and power. Especially when dealing with power consumption, mobile devices cannot disregard the environment conditions and the user habits. To manage at the best one of the most important mobile device resource, battery lifetime, we are proposing MPower, an adaptive power management system for Android based mobile devices. The ultimate goal of this research is to automatically generate and select user-specific power profiles, to best optimize the device power consumption given the device features, the environmental conditions and the user needs. MPower is a project currently under development and this paper aims at presenting the overall vision of the research, focusing on the data collection phase, which is a central activity to fulfill the proposed objectives.
Conference Paper
Full-text available
Despite the advances in battery technologies, mobile phones still suffer from severe energy limitations. Modern handsets are rich devices that can support multitasking thanks to their high processing power and provide a wide range of resources such as sensors and network interfaces with different energy demands. There have been multiple attempts to characterise those energy demands; both to save or to allocate energy to the applications on the handset. However, there is still little understanding on how the interdependencies between resources (interdependencies caused by the applications and users' behaviour) affect the battery life. In this paper, we demonstrate the necessity of considering all those dynamics in order to characterise the energy demands of the system accurately. These results indicate that simple algorithmic and rule-based scheduling techniques [7] are not the most appropriate way of managing the resources since their usage can be affected by contextual factors, making necessary to find customised solutions that consider each user's behaviour and handset features.
Chapter
The sections in this article are1The Problem2Background and Literature3Outline4Displaying the Basic Ideas: Arx Models and the Linear Least Squares Method5Model Structures I: Linear Models6Model Structures Ii: Nonlinear Black-Box Models7General Parameter Estimation Techniques8Special Estimation Techniques for Linear Black-Box Models9Data Quality10Model Validation and Model Selection11Back to Data: The Practical Side of Identification
Energy management techniques in modern mobile handsets. Communications Surveys Tutorials
  • Vallina-Rodriguez N.