Received: 6 June 2016 Revised: 3 August 2016 Accepted: 1 October 2016 DOI 10.1002/dac.3235 RESEARCH ARTICLE A case and framework for code analysis–based smartphone application energy estimation Raja Wasim Ahmad 1 Abdullah Gani 1 Siti Hafizah Ab Hamid 1 Anjum Naveed 1 Kwangman KO 2 Joel J. P. C. Rodrigues 3,4,5 1 Center for Mobile Cloud Computing Research (C4MCCR), FSKTM, University of Malaya, Kuala Lumpur, Malaysia 2 School of Computer and Information Engineering, Sangji University, Wonju, Republic of South Korea 3 National Institute of Telecommunications (INATEL), Santa Rita do Sapucaí, Brazil 4 Instituto de Telecomunicações, Universidade da Beira Interior, Covilhã, Portugal 5 University ITMO, St. Petersburg, Russia Correspondence Raja Wasim Ahmad, Abdullah Gani, C4MCCR, University of Malaya, Kuala Lumpur, Malaysia. Email: wasimraja@siswa.um.edu.my, abdullah@um.edu.my Funding information Malaysian Ministry of Education Skim Bright Spark Program Instituto de Telecomunicações, Next Generation Networks and Applications Group (NetGNA) Covilhã Delegation, and Government of Russian Federation FCT, Grant/Award Number: UM.C/625/1/HIR/ MOE/FCSIT/03, 074-U01 Summary The hype in the popularity of recent wireless technologies has increased applica- tions of smartphones in various fields, particularly, education and health care. The trend of increasing application functionality to enrich smartphone users experience requires detailed insights of application energy consumption behavior. Smartphone application energy estimation helps investigate energy consumption behavior of applications at diversified granularity when it is run on resource-constrained devices. Fine granular estimation gives more insights to the application energy consumption behavior to assist developers to propose resource-friendly application designs. This study proposes a lightweight code analysis–based estimation framework to minimize high profiling overhead of use-based estimation methods. Moreover, it analyzes esti- mation overhead and accuracy of existing dynamic estimation tools to present a case for code analysis–based energy estimation method. The estimated energy is found 86% accurate to the ground truth value for a set of benchmarks using our proposed framework. KEYWORDS application energy, energy estimation, energy profiling, profiling overhead 1 INTRODUCTION Nowadays, with the proliferation of advancements in con- sumer electronic technologies, the energy efficient system design has become a must-to-meet requirement for recent resource-constrained smartphone devices. Among all smart- phone applications, video on demand, 1 mobile-gaming, location-aware social applications, and context-based advertisement services are the utmost energy-consuming services. 26 The inherent features of these services signif- icantly increase the energy demands of processors when executed on mobile phones. 7,8 It is estimated that in the last 2 decades processor power budget has surged from 1 to 50 W because of high resource demands of smartphone appli- cations. To efficiently exploit smartphone battery’s power budget, energy estimation assists designing resource-efficient applications to augment device’s lifetime. 4,9,10 Smartphone application energy estimation facilitates to (a) identify rogue applications, (b) diagnose smartphone energy consumption, (c) estimate per-application energy use, and (d) optimize application energy use. Smartphone application energy esti- mation investigates energy use behavior of an application at diversified granularity, eg, coarse and fine granular when it is run on a smartphone device. In comparison to coarse gran- ular energy estimation (eg, process and thread level), fine granular instruction cost model–based estimation gives more insights to the application energy consumption behavior to improve the energy consumption of smartphone devices. Smartphone application energy estimation follows lab-based external physical measurement or self-metering method to forecast energy consumption of an application. External physical measurement–based energy estimation is impractical and non-scalable because of high dependency on external power measurement tools such as power meter. Alter- natively, self-metering–based energy estimation uses state of charge estimation methods to access voltage and current sensors within fuel gauge component to estimate application energy consumption. 3,4,11,12 However, constructing power Int J Commun Syst 2016; 1–14 wileyonlinelibrary.com/journal/dac Copyright © 2016 John Wiley & Sons, Ltd. 1