Energy-Aware Performance Evaluation of Android Custom Kernels

Smartphones play a key role in several aspects of our daily life. Their range of application is constantly growing, making them versatile and necessary. However, mobile devices face an important problem: they hold an important autonomy requirement, which is constantly challenged by the short life of batteries. Researchers and practitioners have proposed different strategies to preserve battery life in mobile devices, both from hardware and software point of views. One of the software-based approaches is to apply optimizations at the level of the kernel of the operating system. This strategy is attractive, as it may improve the battery consumption of all applications running on top of the software kernel. The scope of this paper is to compare current Android kernel-based modifications evaluating their impact on battery consumption. To do it, we performed performance tests on each kernel, monitoring the battery consumption in background. Additionally, we run a general performance test to see the impact of the applied kernel modifications to the overall performance of the optimized device. Our results show that kernel level enhancements do improve the battery life and the device's performance. According to our tests, the analyzed custom kernels can reduce the battery consumption up to 33% for isolated tasks, improving the general performance of the device by up to 16%.

[1]  Ahmad Rahmati,et al.  Understanding human-battery interaction on mobile phones , 2007, Mobile HCI.

[2]  Alberto Sillitti,et al.  Open Source Mobile Virtual Machines: An Energy Assessment of Dalvik vs. ART , 2014, OSS.

[3]  Alberto Sillitti,et al.  Analysis of Offloading as an Approach for Energy-Aware Applications on Android OS: A Case Study on Image Processing , 2014, MobiWIS.

[4]  Ahmad Rahmati,et al.  Users and Batteries: Interactions and Adaptive Energy Management in Mobile Systems , 2007, UbiComp.

[5]  Kuochen Wang,et al.  Energy Efficient Intra-Task Dynamic Voltage Scaling for Realistic CPUs of Mobile Devices , 2009, J. Inf. Sci. Eng..

[6]  Alberto Sillitti,et al.  Method reallocation to reduce energy consumption: an implementation in Android OS , 2014, SAC.

[7]  Alberto Sillitti,et al.  A study of energy-aware implementation techniques: Redistribution of computational jobs in mobile apps , 2015, Sustain. Comput. Informatics Syst..

[8]  Matti Siekkinen,et al.  Smartphone Energy Consumption: Modeling and Optimization , 2014 .

[9]  Derek McAuley,et al.  Energy is just another resource: energy accounting and energy pricing in the Nemesis OS , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[10]  Y. Chiang Building a Better Battery , 2010, Science.

[11]  Adrian David Cheok,et al.  22nd International Conference on Human-Computer Interaction with Mobile Devices and Services , 2007, Lecture Notes in Computer Science.

[12]  Jason Flinn,et al.  Self-Tuning Wireless Network Power Management , 2003, MobiCom '03.

[13]  Dan Boneh,et al.  Who killed my battery?: analyzing mobile browser energy consumption , 2012, WWW.

[14]  Philip Levis,et al.  Energy management in mobile devices with the cinder operating system , 2011, EuroSys '11.

[15]  Gabriel-Miro Muntean,et al.  Adaptive Energy Optimization in Multimedia-Centric Wireless Devices: A Survey , 2013, IEEE Communications Surveys & Tutorials.

[16]  Ding Li,et al.  An investigation into energy-saving programming practices for Android smartphone app development , 2014, GREENS 2014.

[17]  Keith Kirkpatrick World without wires , 2014, Commun. ACM.

[18]  Ming Zhang,et al.  Bootstrapping energy debugging on smartphones: a first look at energy bugs in mobile devices , 2011, HotNets-X.

[19]  Narseo Vallina-Rodriguez,et al.  ErdOS: achieving energy savings in mobile OS , 2011, MobiArch '11.

[20]  Byung-Gon Chun,et al.  CloneCloud: elastic execution between mobile device and cloud , 2011, EuroSys '11.