蔣厚明,胡 牧,曹海濤,張利平
(1.國網電力科學研究院,南京 210000;2.南京郵電大學,南京 210023)
面向電力移動終端應用能耗缺陷的測試技術研究
蔣厚明1,胡 牧1,曹海濤1,張利平2
(1.國網電力科學研究院,南京 210000;2.南京郵電大學,南京 210023)
隨著電力行業移動應用功能越來越多,而有限的電量限制了移動設備的持續使用。如何對安裝在移動終端的應用程序的能耗進行分析和度量,降低不必要能耗操作行為,將是電力移動終端測試面臨的較大挑戰。梳理了國內外移動應用的能耗節省技術發展現狀,探討了面向電力移動終端能耗缺陷的測試技術框架,分析了面向電力移動終端應用能耗缺陷的測試技術和難點。這些關鍵技術有效降低移動終端的能耗缺陷,推進節能減排技術革新,大量減少后期維護更新的成本。
電力移動終端;能耗分析;能耗度量;能耗缺陷
近年來,隨著移動通信和互聯網技術的迅速發展,移動互聯網高速增長,正在深刻影響著人們的生活方式,同時也有力推動了企業的業務模式變革和產業升級。與移動業務繁榮的景象相比,電池的制造工藝長年停步不前,電池容量僅以每年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)基礎理論研究。面向電力移動終端應用能耗缺陷的測試相關理論正在形成中,從而給面向電力移動終端應用能耗缺陷的測試提供全新的理論和方法,而新的理論和方法也必將為面向電力移動終端應用能耗缺陷的測試催生新的技術。
2)關鍵技術研究。面向電力移動終端應用能耗缺陷的測試技術主要包括能耗異常的高耗能代碼模式和缺陷靜態分析、電力移動終端能耗敏感行為分析以及電力移動終端應用能耗度量等方面。需要在現有的能耗缺陷分析理論方法的基礎上,結合電力生產、營銷等業務中移動終端長時間戶外操作,能耗過大等問題,研究全新的面向電力移動終端應用能耗缺陷的測試理論方法,以解決在電力移動終端的應用程序的能耗進行分析和度量,降低不必要能耗操作行為。
3)原型應用研究。在原型應用層面,需要針對面向電力移動終端應用能耗缺陷的測試開展應用需求分析、場景設計、模型及技術方法的研究。
2.1 關鍵技術分析
為了解決移動應用中存在的能耗缺陷,掌握移動應用的能耗情況,重點研究能耗異常的高耗能代碼模式和能耗缺陷靜態分析、電力移動終端能耗敏感行為分析以及電力移動終端應用能耗度量等關鍵技術。
1)能耗異常的高耗能代碼模式和能耗缺陷靜態分析技術
針對能耗異常的高耗能代碼模式、能耗缺陷及其原因,首先選擇一批智能移動終端應用,測試是否存在能耗異常。對于能耗異常的移動應用,采取插樁的方法,將能耗異常的行為對應到應用程序的執行路徑上。分析該執行路徑,鎖定能耗缺陷代碼,并分析代碼語義找出能耗缺陷原因,形成能耗缺陷類別表。
2)電力移動終端能耗敏感行為分析技術
針對電力移動終端應用能耗敏感行為以及能耗瓶頸研究,首先使用靜態分析技術尋找潛在的能耗缺陷,基于能耗缺陷類別表,對移動應用的源代碼進行模式匹配,分析其中是否包含能耗缺陷代碼模式。然后使用基于目標制導的符號執行技術分析程序代碼。最后使用動態分析,運行移動應用程序進行階段型采樣,并通過k-means聚類算法,將相似的能耗聚類成相位(每一個項目對應一類業務操作),從而得到應用程序的能耗相位圖。
3)電力移動終端應用能耗度量技術
針對電力移動終端用能耗度量技術,首先建立包含指令、代碼行等不同級別下各設備的能耗情況的系統能耗模型。然后獲取移動應用的使用負荷描述,使用負荷生成負責將用戶或測試者的使用行為轉換為能耗分析所需要的路徑信息。然后根據使用負荷生成的路徑集合和能耗模型進行移動應用能耗度量。最后,基于上述能耗缺陷代碼模式與原因研究、能耗敏感行為與能耗瓶頸分析研究、基于目標制導的符號執行技術,以及移動應用能耗度量技術,并在電力移動終端應用中試點應用。
2.2 關鍵點和難點
1)高耗能代碼模式識別
目前國際上對能耗缺陷的研究處于開始階段,關注的能耗缺陷都局限于零星的缺陷模式,缺乏全面的研究和了解;也沒有對高耗能代碼模式做很好的總結,不利于能耗缺陷的發現和排除。如何發現各類不同的能耗缺陷,并分析出引發缺陷的原因,找到程序中相應的高耗能代碼模式,是本技術研究的關鍵點與難點。
2)移動應用能耗度量
傳統的移動應用能耗度量技術大多是采取度量儀器間隔采樣的方法,該方法無法區分度量的應用與其他應用和系統服務的能耗,度量粒度過粗;同時,每度量一個應用都需要重復度量步驟,歷史的度量信息沒有得到很好的利用。如何利用已有的度量信息,為設備平臺建立能耗模型,并且在更為精細的粒度上對應用進行能耗度量,是本技術研究的另一個關鍵點和難點。
本文首先提出面向電力移動終端應用能耗缺陷的測試研究框架,在此基礎上重點分析了面向電力移動終端應用能耗缺陷的測試關鍵技術和相應的技術難點,從而為提高電力移動終端應用的效率和可靠性、增加終端使用壽命、降低能源消耗、保護生態環境提供強有力的技術支撐。
[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 -),男,江蘇南通海安人,碩士,研究方向為計算機應用和電力信息自動化。