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.
2–6
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