ABSTRACT
With power demands of mobile devices rising, it is becoming increasingly important to make mobile software applications more energy efficient. Unfortunately, mobile platforms are diverse and very complex which makes energy behaviours difficult to model. This complexity presents challenges to the effectiveness of off-line optimisation of mobile applications. In this paper, we demonstrate that it is possible to automatically optimise an application for energy on a mobile device by evaluating energy consumption in-vivo. In contrast to previous work, we use only the device's own internal meter. Our approach involves many technical challenges but represents a realistic path toward learning hardware specific energy models for program code features.
- MAX17047/MAX17050 ModelGauge m3 Fuel Gauge. URL https://datasheets.maximintegrated.com/en/ds/MAX17047-MAX17050.pdf. Accessed November 2016.Google Scholar
- International Energy Agency. Key world energy statistics 2015, 2015. URL http://www.iea.org/publications/freepublications/publication/key-world-energy-statistics-2015.html.Google Scholar
- Android Power Profiles. Android. URL https://source.android.com/devices/tech/power.html. retrieved 03/2016.Google Scholar
- Android Developers. Optimizing for doze and app standby. URL https://developer.android.com/training/monitoring-device-state/doze-standby.html. Accessed 23 March 2017.Google Scholar
- Abhijeet Banerjee, Lee Kee Chong, Sudipta Chattopadhyay, and Abhik Roy-choudhury. Detecting energy bugs and hotspots in mobile apps. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), pages=588--598, year=2014, organization=ACM. Google ScholarDigital Library
- Mahmoud Bokhari and Markus Wagner. Optimising energy consumption heuristically on android mobile phones. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO) Companion, pages 1139--1140. ACM, 2016. Google ScholarDigital Library
- Mahmoud A. Bokhari, Yuanzhong Xia, Bo Zhou, Brad Alexander, and Markus Wagner. Validation of internal meters of mobile android devices. CoRR, abs/1701.07095, 2017. URL http://arxiv.org/abs/1701.07095.Google Scholar
- Bobby R Bruce, Justyna Petke, and Mark Harman. Reducing energy consumption using genetic improvement. In Genetic and Evolutionary Computation Conference, pages 1327--1334. ACM, 2015. Google ScholarDigital Library
- Bobby R. Bruce, Jonathan M. Aitken, and Justyna Petke. Deep parameter optimisation for face detection using the viola-jones algorithm in OpenCV. In Proceedings of the Symposium on Search-Based Software Engineering (SSBSE), pages 238--243. Springer, 2016.Google ScholarCross Ref
- Bobby R. Bruce, Justyna Petke, Mark Harman, and Earl T. Barr. Approximate oracles and synergy in software energy search spaces. Technical report, Research Note RN/17/01, Department of Computer Science, University College London, 2017. URL http://www.cs.ucl.ac.uk/fileadmin/UCL-CS/research/Research_Notes/RN_17_01.PDF.Google Scholar
- Canalys. Smart phones overtake client PCs in 2011, 2012. URL https://www.canalys.com/static/press_release/2012/canalys-press-release-030212-smart-phones-overtake-client-pcs-2011_0.pdf. Accessed on 24 March 2017.Google Scholar
- Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and T. A. M. T. Meyarivan. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation, 6(2):182--197, 2002. Google ScholarDigital Library
- Jie Han and Michael Orshansky. Approximate computing: An emerging paradigm for energy-efficient design. In Proceedings of the 2013 European Test Symposium (ETS), pages 1--6. IEEE, 2013.Google ScholarCross Ref
- Saemundur O. Haraldsson and John R. Woodward. Genetic improvement of energy usage is only as reliable as the measurements are accurate. In Proceedings of the Companion Publication of the 2015 Annual Conference on Genetic and Evolutionary Computation, pages 821--822. ACM, 2015. Google ScholarDigital Library
- Mark Harman and Bryan F Jones. Search-based software engineering. Information and software Technology, 43(14):833--839, 2001.Google Scholar
- Abram Hindle, Alex Wilson, Kent Rasmussen, E. Jed Barlow, Joshua Charles Campbell, and Stephen Romansky. Greenminer: A hardware based mining software repositories software energy consumption framework. In Proceedings of the 11th Working Conference on Mining Software Repositories (MSR), pages 12--21. ACM, 2014. Google ScholarDigital Library
- Hammad Khalid, Emad Shihab, Meiyappan Nagappan, and Ahmed E. Hassan. What do mobile app users complain about? IEEE Software, 32(3):70--77, 2015.Google ScholarDigital Library
- Ding Li and William GJ Halfond. Optimizing energy of http requests in android applications. In Proceedings of the 3rd International Workshop on Software Development Lifecycle for Mobile, pages 25--28, 2015. Google ScholarDigital Library
- Ding Li, Angelica Huyen Tran, and William GJ Halfond. Making web applications more energy efficient for OLED smartphones. In Proceedings of the 36th International Conference on Software Engineering (ICSE), pages 527--538, 2014. Google ScholarDigital Library
- Irene Manotas, Christian Bird, Rui Zhang, David Shepherd, Ciera Jaspan, Caitlin Sadowski, Lori Pollock, and James Clause. An empirical study of practitioners' perspectives on green software engineering. In Proceedings of the 38th International Conference on Software Engineering (ICSE), pages=237--248, year=2016. Google ScholarDigital Library
- Irene Manotas, Lori Pollock, and James Clause. Seeds: A software engineer's energy-optimization decision support framework. In Proceedings of the 36th Int. Conference on Software Engineering (ICSE), pages 503--514. ACM, 2014. Google ScholarDigital Library
- Adel Noureddine and Ajitha Rajan. Optimising energy consumption of design patterns. In Proceedings of the 37th International Conference on Software Engineering (ICSE), pages 623--626. IEEE Press, 2015. Google ScholarDigital Library
- Open Signal. Android fragmentation visualized, 2015. URL hrtps://opensignal.com/reports/2015/08/android-fragmentation/. Accessed on 24 March 2017.Google Scholar
- Candy Pang, Abram Hindle, Bram Adams, and Ahmed E. Hassan. What do programmers know about software energy consumption? IEEE Software, 33(3):83--89, 2016. Google ScholarDigital Library
- Fabio Pellacini. User-configurable automatic shader simplification. ACM Transactions on Graphics, 24(3):445, 2005. Google ScholarDigital Library
- Rui Pereira, Marco Couto, João Saraiva, Jácome Cunha, and João Paulo Fernandes. The influence of the Java collection framework on overall energy consumption. In Proceedings of the 5th International Workshop on Green and Sustainable Software (GREENS). ACM, 2016. Google ScholarDigital Library
- Justyna Petke, Saemundur O. Haraldsson, Mark Harman, William B. Langdon, David R. White, and John R. Woodward. Genetic Improvement of software: A comprehensive survey. IEEE Transactions on Evolutionary Computation, 2017.Google Scholar
- Dominic P Searson, David E Leahy, and Mark J Willis. Gptips: an open source genetic programming toolbox for multigene symbolic regression. In Proceedings of the International multiconference of engineers and computer scientists, volume 1, pages 77--80. Citeseer, 2010.Google Scholar
- Pitchaya Sitthi-Amorn, Nicholas Modly, Westley Weimer, and Jason Lawrence. Genetic Programming for shader simplification. ACM Transactions on Graphics, 30(6):152, 2011. Google ScholarDigital Library
- Mandavilli Srinivas and Lalit M. Patnaik. Genetic algorithms: A survey. Computer, 27(6):17--26, 1994. Google ScholarDigital Library
- The Guardian. Google unveils android o, promising better battery life. URL https://www.theguardian.com/technology/2017/mar/22/google-unveils-android-o-promising-better-battery-life. Accessed 23 March 2017.Google Scholar
- James Tiongson. Mobile app: Marketing insights, 2015. URL https://www.thinkwithgoogle.com/articles/mobile-app-marketing-insights.html. Accessed on 24 March 2017.Google Scholar
- Fan Wu, Westley Weimer, Mark Harman, Yue Jia, and Jens Krinke. Deep parameter optimisation. In Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation (GECCO), pages 1375--1382. ACM, 2015. Google ScholarDigital Library
Recommendations
In-vivo and offline optimisation of energy use in the presence of small energy signals: A case study on a popular Android library
MobiQuitous '18: Proceedings of the 15th EAI International Conference on Mobile and Ubiquitous Systems: Computing, Networking and ServicesEnergy demands of applications on mobile platforms are increasing. As a result, there has been a growing interest in optimising their energy efficiency. As mobile platforms are fast-changing, diverse and complex, the optimisation of energy use is a non-...
Reducing Energy Consumption of Alarm-induced Wake-ups on Android Smartphones
HotMobile '15: Proceedings of the 16th International Workshop on Mobile Computing Systems and ApplicationsAlarms are often used to set smartphones to perform tasks at scheduled times. Many applications use alarm functionality, and devices consequently experience frequent wake-ups and waste energy. In this paper, we analyze alarm-induced wake-ups in the ...
Energy Optimisation for Mobile Device Power Consumption: A Survey and a Unified View of Modelling for a Comprehensive Network Simulation
The need for the analysis of energy consumption has become greater due to the constrained resources of mobile devices afforded by the increased usage of mobile devices and the environmental footprint of large-scale, distributed systems. Energy usage has ...
Comments