Orka: A New Technique to Profile the Energy Usage of Android Applications

Benjamin Westfield, Anandha Gopalan

Abstract

The ever increasing complexity of mobile devices has opened new, exciting possibilities to both designers of applications and their end users. However, this technological improvement comes with an increase in power consumption, a drain that battery technology has not managed to keep up with. Due to this, application developers are now facing a new optimisation challenge not present for traditional software: minimising energy usage. Developers need guidance to help reduce energy usage while not compromising on the features of their application. Despite research identifying areas of code consuming high energy, developers currently don’t possess the necessary tools to make judgements on their application’s design based on this. This paper presents Orka, a new tool that analyses an Android application and provides feedback on exactly where the application is expanding energy, thus enabling developers to improve its energy-efficiency. Orka profiles an application using user-defined test cases, code injection techniques and bytecode analysis. Feedback provided is the energy usage at the method level as well as any consumption due to hardware used. Moreover, to be useful over the entire development life-cycle, this feedback is compared with feedback from previous versions of the application so as to monitor and improve the energy usage.

References

  1. Brooks, D., Tiwari, V., and Martonosi, M. (2000). Wattch: a framework for architectural-level power analysis and optimizations, volume 28. ACM.
  2. Bunse, C., Höpfner, H., Roychoudhury, S., and Mansour, E. (2009). Choosing the “Best” Sorting Algorithm for Optimal Energy Consumption. In ICSOFT (2), pages 199-206.
  3. Casey, G. (2013). Inserting keylogger code in Android SwiftKey using apktool. https:// www.georgiecasey.com/2013/03/06/insertingkeylogger-code-in-android-swiftkey-using-apktool/. Accessed: 2015-08-24.
  4. Chaudhari, A. (2015). Mobile Applications Market Expected to Reach US$ 54.89 Billion by 2020 Transparency Market Research. http://globenewswire.com/ news-release/2015/02/19/707887/10120995/en/ Mobile-Applications-Market-Expected-to-ReachUS-54-89-Billion-by-2020-Transparency-MarketResearch.html. Accessed: 2015-06-05.
  5. Corral, L., Georgiev, A. B., Sillitti, A., and Succi, G. (2013). A method for characterizing energy consumption in Android smartphones. In Green and Sustainable Software (GREENS), 2013 2nd International Workshop on, pages 38-45. IEEE.
  6. Dong, M. and Zhong, L. (2012). Chameleon: a coloradaptive web browser for mobile OLED displays. Mobile Computing, IEEE Transactions on, 11(5):724- 738.
  7. Ehringer, D. (2010). The Dalvik Virtual Machine Architecture. http://show.docjava.com/posterous/file/2012/12/ 10222640-The Dalvik Virtual Machine.pdf. Accessed: 2015-08-24.
  8. Google. Dalvik bytecode. https://source.android.com/ devices/tech/dalvik/dalvik-bytecode.html. Accessed: 2015-08-24.
  9. Google. Keeping the Device Awake. http://developer. android.com/training/scheduling/wakelock.html. Accessed: 2015-08-24.
  10. Google. Signing Your Applications. https:// developer. android.com/ tools/ publishing/ app-signing.html. Accessed: 2015-08-24.
  11. Hao, S., Li, D., Halfond, W. G., and Govindan, R. (2012). Estimating Android applications' CPU energy usage via bytecode profiling. InProceedings of the First International Workshop on Green and Sustainable Software, pages 1-7. IEEE Press.
  12. Heikkinen, M. V., Nurminen, J. K., Smura, T., and Hämmäinen, H. (2012). Energy efficiency of mobile handsets: Measuring user attitudes and behavior. Telematics and Informatics, 29:387-399.
  13. Jabbarvand, R., Sadeghi, A., Garcia, J., Malek, S., and Ammann, P. (2015). EcoDroid: An Approach for EnergyBased Ranking of Android Apps. In Proceedings of the 4th International Workshop on Green and Sustainable Software, pages 8-14. IEEE Press.
  14. Li, D., Hao, S., Halfond, W. G., and Govindan, R. (2013). Calculating source line level energy information for android applications. In Proceedings of the 2013 International Symposium on Software Testing and Analysis, pages 78-89. ACM.
  15. Pathak, A., Hu, Y. C., and Zhang, M. (2012). Where is the energy spent inside my app?: fine grained energy accounting on smartphones with eprof. In Proceedings of the 7th ACM european conference on Computer Systems, pages 29-42. ACM.
  16. Rivera, J. (2015). Gartner Says Tablet Sales Continue to Be Slow in 2015 . https://source.android.com/devices/ tech/power/index.html. Accessed: 2015-08-24.
  17. Shimpi, A. (2013). The Nexus 7 (2013) Review - Platform Power and Battery Life. http://www.anandtech.com/ show/7231/the-nexus-7-2013-review/2. Accessed: 2015-08-30.
  18. Smali (2015). Registers. https://github.com/JesusFreke/ smali. Accessed: 2015-08-24.
  19. StackOverflow (2015). How to use Xposed framework on Android emulator. http://stackoverflow.com/ questions/18142924/how-to-use-xposed-frameworkon-android-emulator. Accessed: 2015-08-24.
  20. Stylianou, C. (2013). Speeding Up the Android Emulator on Intel Architecture. https://software.intel.com/en-us/ android/articles/speeding-up-the-android-emulatoron-intel-architecture. Accessed: 2015-08-14.
  21. Wilke, C., Richly, S., Gotz, S., Piechnick, C., and Aß- mann, U. (2013). Energy consumption and efficiency in mobile applications: A user feedback study. In Green Computing and Communications (GreenCom), 2013 IEEE and Internet of Things (iThings/CPSCom), IEEE International Conference on and IEEE Cyber, Physical and Social Computing, pages 134-141. IEEE.
  22. Winchester, H. (2015). The best VR headsets. http:// www.wareable.com/headgear/the-best-ar-and-vrheadsets. Accessed: 2015-06-05.
  23. XDADevelopers (2014). Installing Xposed on the Android Emulator. http://forum.xda-developers.com/xposed/ installing-xposed-android-emulator-t2794768. Accessed: 2015-08-24.
Download


Paper Citation


in Harvard Style

Westfield B. and Gopalan A. (2016). Orka: A New Technique to Profile the Energy Usage of Android Applications . In Proceedings of the 5th International Conference on Smart Cities and Green ICT Systems - Volume 1: SMARTGREENS, ISBN 978-989-758-184-7, pages 213-224. DOI: 10.5220/0005812202130224


in Bibtex Style

@conference{smartgreens16,
author={Benjamin Westfield and Anandha Gopalan},
title={Orka: A New Technique to Profile the Energy Usage of Android Applications},
booktitle={Proceedings of the 5th International Conference on Smart Cities and Green ICT Systems - Volume 1: SMARTGREENS,},
year={2016},
pages={213-224},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005812202130224},
isbn={978-989-758-184-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 5th International Conference on Smart Cities and Green ICT Systems - Volume 1: SMARTGREENS,
TI - Orka: A New Technique to Profile the Energy Usage of Android Applications
SN - 978-989-758-184-7
AU - Westfield B.
AU - Gopalan A.
PY - 2016
SP - 213
EP - 224
DO - 10.5220/0005812202130224