面向电力移动终端应用能耗缺陷的测试技术研究
2017-01-20蒋厚明曹海涛张利平
蒋厚明,胡 牧,曹海涛,张利平
(1.国网电力科学研究院,南京 210000;2.南京邮电大学,南京 210023)
面向电力移动终端应用能耗缺陷的测试技术研究
蒋厚明1,胡 牧1,曹海涛1,张利平2
(1.国网电力科学研究院,南京 210000;2.南京邮电大学,南京 210023)
随着电力行业移动应用功能越来越多,而有限的电量限制了移动设备的持续使用。如何对安装在移动终端的应用程序的能耗进行分析和度量,降低不必要能耗操作行为,将是电力移动终端测试面临的较大挑战。梳理了国内外移动应用的能耗节省技术发展现状,探讨了面向电力移动终端能耗缺陷的测试技术框架,分析了面向电力移动终端应用能耗缺陷的测试技术和难点。这些关键技术有效降低移动终端的能耗缺陷,推进节能减排技术革新,大量减少后期维护更新的成本。
电力移动终端;能耗分析;能耗度量;能耗缺陷
0 引言
近年来,随着移动通信和互联网技术的迅速发展,移动互联网高速增长,正在深刻影响着人们的生活方式,同时也有力推动了企业的业务模式变革和产业升级。与移动业务繁荣的景象相比,电池的制造工艺长年停步不前,电池容量仅以每年6%的速度缓慢增长。能源已成为智能终端设备的发展瓶颈。其次,除了有限的能源供应以外,能耗还影响智能终端的可靠性和使用寿命。目前,面向电力的移动应用功能越来越多,而有限的电量限制了移动设备的持续使用。在电力生产、营销等业务中,移动作业终端、移动缴费终端等移动终端,都需要长时间在户外操作,控制能量的消耗是移动应用必须面对的问题。如何对安装在移动终端的应用程序能耗进行优化,降低移动终端的能耗,将是电力移动终端测试面临的较大挑战。
目前移动应用的能耗节省研究主要集中于三个方面:能耗缺陷检测、移动应用的能耗优化以及移动应用的能耗度量。
在能耗缺陷检测方面,Abhinav Pathak等[1]首次提出了能耗缺陷的概念。在此基础上,Abhinav Pathak等[2]又提出了无睡眠能耗缺陷的问题。Liu Y等[3]提出传感器设备误用或者传感器数据无用而导致的能耗黑洞的检测。在移动应用的能耗优化方面,I. Choi等[4]提出了背光的动态亮度缩放的技术。为了更好地调整LCD面板的背光能耗,Hojun Shim等[5]提出了扩展的背光动态亮度缩放技术。David等[6]研究了移动设备中存储对该设备能耗的影响。与此同时,通过对移动终端操作系统的优化[7,8],可以更好地优化终端应用能耗。在移动应用的能耗度量方面,Hao S等[9]通过研发相应的软件工具来分析手机应用的能耗估计。Tiwari等[10]针对每一对软件指令构建相应的能耗模型。
综上所述,当前针对移动应用的能耗节省研究的需求迫切,而现有研究更多地关注特殊硬件能耗管理和优化,而忽视了移动应用对于能耗的巨大影响。而事实上,目前的硬件大多在能耗上都是符合行业标准的,引发能耗异常行为的一般都是移动应用程序的缺陷。因此,有必要对能耗缺陷加强研究。
本文第1部分介绍面向电力移动终端应用能耗缺陷的测试研究框架,第2部分介绍面向电力移动终端应用能耗缺陷的测试关键技术分析,最后对全文进行总结。
1 面向电力移动终端应用能耗缺陷的测试研究框架
面向电力移动终端应用能耗缺陷的测试技术的研究框架主要分为基础理论研究、关键技术研究以及原型应用研究三部分。
1)基础理论研究。面向电力移动终端应用能耗缺陷的测试相关理论正在形成中,从而给面向电力移动终端应用能耗缺陷的测试提供全新的理论和方法,而新的理论和方法也必将为面向电力移动终端应用能耗缺陷的测试催生新的技术。
2)关键技术研究。面向电力移动终端应用能耗缺陷的测试技术主要包括能耗异常的高耗能代码模式和缺陷静态分析、电力移动终端能耗敏感行为分析以及电力移动终端应用能耗度量等方面。需要在现有的能耗缺陷分析理论方法的基础上,结合电力生产、营销等业务中移动终端长时间户外操作,能耗过大等问题,研究全新的面向电力移动终端应用能耗缺陷的测试理论方法,以解决在电力移动终端的应用程序的能耗进行分析和度量,降低不必要能耗操作行为。
3)原型应用研究。在原型应用层面,需要针对面向电力移动终端应用能耗缺陷的测试开展应用需求分析、场景设计、模型及技术方法的研究。
2 面向电力移动终端应用能耗缺陷的测试关键技术
2.1 关键技术分析
为了解决移动应用中存在的能耗缺陷,掌握移动应用的能耗情况,重点研究能耗异常的高耗能代码模式和能耗缺陷静态分析、电力移动终端能耗敏感行为分析以及电力移动终端应用能耗度量等关键技术。
1)能耗异常的高耗能代码模式和能耗缺陷静态分析技术
针对能耗异常的高耗能代码模式、能耗缺陷及其原因,首先选择一批智能移动终端应用,测试是否存在能耗异常。对于能耗异常的移动应用,采取插桩的方法,将能耗异常的行为对应到应用程序的执行路径上。分析该执行路径,锁定能耗缺陷代码,并分析代码语义找出能耗缺陷原因,形成能耗缺陷类别表。
2)电力移动终端能耗敏感行为分析技术
针对电力移动终端应用能耗敏感行为以及能耗瓶颈研究,首先使用静态分析技术寻找潜在的能耗缺陷,基于能耗缺陷类别表,对移动应用的源代码进行模式匹配,分析其中是否包含能耗缺陷代码模式。然后使用基于目标制导的符号执行技术分析程序代码。最后使用动态分析,运行移动应用程序进行阶段型采样,并通过k-means聚类算法,将相似的能耗聚类成相位(每一个项目对应一类业务操作),从而得到应用程序的能耗相位图。
3)电力移动终端应用能耗度量技术
针对电力移动终端用能耗度量技术,首先建立包含指令、代码行等不同级别下各设备的能耗情况的系统能耗模型。然后获取移动应用的使用负荷描述,使用负荷生成负责将用户或测试者的使用行为转换为能耗分析所需要的路径信息。然后根据使用负荷生成的路径集合和能耗模型进行移动应用能耗度量。最后,基于上述能耗缺陷代码模式与原因研究、能耗敏感行为与能耗瓶颈分析研究、基于目标制导的符号执行技术,以及移动应用能耗度量技术,并在电力移动终端应用中试点应用。
2.2 关键点和难点
1)高耗能代码模式识别
目前国际上对能耗缺陷的研究处于开始阶段,关注的能耗缺陷都局限于零星的缺陷模式,缺乏全面的研究和了解;也没有对高耗能代码模式做很好的总结,不利于能耗缺陷的发现和排除。如何发现各类不同的能耗缺陷,并分析出引发缺陷的原因,找到程序中相应的高耗能代码模式,是本技术研究的关键点与难点。
2)移动应用能耗度量
传统的移动应用能耗度量技术大多是采取度量仪器间隔采样的方法,该方法无法区分度量的应用与其他应用和系统服务的能耗,度量粒度过粗;同时,每度量一个应用都需要重复度量步骤,历史的度量信息没有得到很好的利用。如何利用已有的度量信息,为设备平台建立能耗模型,并且在更为精细的粒度上对应用进行能耗度量,是本技术研究的另一个关键点和难点。
3 结论
本文首先提出面向电力移动终端应用能耗缺陷的测试研究框架,在此基础上重点分析了面向电力移动终端应用能耗缺陷的测试关键技术和相应的技术难点,从而为提高电力移动终端应用的效率和可靠性、增加终端使用寿命、降低能源消耗、保护生态环境提供强有力的技术支撑。
[1] Pathak A,Hu Y C,Zhang M. Bootstrapping energy debugging on smartphones: a first look at energy bugs in mobile devices[C]. Proceedings of the 10th ACM Workshop on Hot Topics in Networks.ACM,2011:1-5.
[2] Pathak A, Jindal A, Hu Y C,et al.What is keeping my phone awake: characterizing and detecting no-sleep energy bugs in smartphone apps[C].Proceedings of the 10th international conference on Mobile systems, applications, and services.ACM, 2012:267-280.
[3] Liu Y, Xu C,Cheung S C.Where has my battery gone? Finding sensor related energy black holes in smartphone applications[C]. Pervasive Computing and Communications (PerCom),2013 IEEE International Conference on.IEEE,2013:2-10.
[4] Choi I, Shim H,Chang N.Low-power color TFT LCD display for hand-held embedded systems[C].International Symposium on Low Power Electronics and Design.IEEE,2002:112-117.
[5] Shim H, Chang N, Pedram M. A Backlight Power ManagementFramework for Battery-Operated Multimedia Systems [J]. Design & Test of Computers IEEE, 2004, 21(5):388-396.
[6] Nguyen D T.Evaluating impact of storage on smartphone energy ef fi ciency[M].2013.
[7] Yuan W, Nahrstedt K. Energy-efficient soft real-time CPU scheduling for mobile multimedia systems[C].ACM Symposium on Operating Systems Principles.ACM,2003:149-163.
[8] Weissel A, Beutel B, Bellosa F. Cooperative I/O: a novel I/O semantics for energy-aware applications[J].Acm Sigops Operating Systems Review,2002,36(SI):117-129.
[9] Hao S, Li D,Halfond W G J, et al. Estimating mobile application energy consumption using program analysis[C].International Conference on Software Engineering. IEEE,2013:92-101.
[10] Tiwari V,Malik S,Wolfe A. Power analysis of embedded software: a first step towards software power minimization [J].IEEE Transactions on Very Large Scale Integration Systems,1994, 2(4):437-445.
Research on testing technology of power consumption defects for power mobile terminals
JIANG Hou-ming1, HU Mu1, CAO Hai-tao1, ZHANG Li-ping2
TP3
A
1009-0134(2017)04-0154-02
2017-02-26
国家电网公司科技项目(524606150120)
蒋厚明(1980 -),男,江苏南通海安人,硕士,研究方向为计算机应用和电力信息自动化。