當(dāng)前位置:首頁 > 智能硬件 > 半導(dǎo)體
[導(dǎo)讀]測試結(jié)論:1)滅屏待機(jī)最省電:a)任何App包括后臺Service應(yīng)該盡可能減少喚醒CPU的次數(shù),比如IM類業(yè)務(wù)的長連接心跳、QQ提醒待機(jī)鬧鐘類業(yè)務(wù)的alarm硬時鐘喚醒要嚴(yán)格控制;b)每次喚醒CPU執(zhí)行的代碼應(yīng)該盡可能少,從而讓

測試結(jié)論:

1)滅屏待機(jī)最省電:

a)任何App包括后臺Service應(yīng)該盡可能減少喚醒CPU的次數(shù),比如IM類業(yè)務(wù)的長連接心跳、QQ提醒待機(jī)鬧鐘類業(yè)務(wù)的alarm硬時鐘喚醒要嚴(yán)格控制;

b)每次喚醒CPU執(zhí)行的代碼應(yīng)該盡可能少,從而讓CPU迅速恢復(fù)休眠,比如申請wake lock的數(shù)量和持有時間要好好斟酌;

2)WiFi比蜂窩數(shù)據(jù),包括2G(GPRS)、3G更省電:

a)盡量在WiFi下傳輸數(shù)據(jù),當(dāng)然這是廢話,不過可以考慮在有WiFi的時候做預(yù)加載,比如應(yīng)用中心的zip包、手Q web類應(yīng)用的離線資源等;

b)非WiFi下,盡量減少網(wǎng)絡(luò)訪問,每一次后臺交互都要考慮是否必須。雖然WiFi接入方式已經(jīng)占到移動互聯(lián)網(wǎng)用戶的50%,但是是有些手機(jī)設(shè)置為待機(jī)關(guān)閉WiFi連接,即便有WiFi信號也只能切換到蜂窩數(shù)據(jù);

測試分析:

1)滅屏的情況:

a)滅屏待機(jī),CPU處于休眠狀態(tài),最省電(7mA);

b)滅屏傳輸,CPU被激活,耗電顯著增加,即便是處理1K的心跳包,電量消耗也會是待機(jī)的6倍左右(45mA);

c)滅屏傳輸,高負(fù)載download的時候WiFi最省電(70mA),3G(270mA)和2G(280mA)相當(dāng),是WiFi的4倍左右;

2)亮屏的情況:

a)亮屏待機(jī),CPU處于激活狀態(tài),加上屏幕耗電,整機(jī)電量消耗不?。?40mA);

b)亮屏傳輸,如果只是處理1K的心跳包,耗電增加不多(150mA),即便是很大的心跳包(64K),消耗增加也不明顯(160mA);

c)亮屏傳輸,高負(fù)載download的時候WiFi最省電(280mA),3G(360mA)和2G(370mA)相當(dāng),是WiFi的1.3倍左右;

3)Alarm喚醒頻繁會導(dǎo)致待機(jī)耗電增加:

手機(jī)滅屏后會進(jìn)入待機(jī)狀態(tài),這時CPU會進(jìn)入休眠狀態(tài)。Android的休眠機(jī)制介紹的文章很多,這里引用一段網(wǎng)絡(luò)文章:

Early suspend是android引進(jìn)的一種機(jī)制,這種機(jī)制在上游備受爭議,這里 不做評論。這個機(jī)制作用在關(guān)閉顯示的時候,在這個時候,一些和顯示有關(guān)的 設(shè)備,比如LCD背光,比如重力感應(yīng)器,觸摸屏,這些設(shè)備都會關(guān)掉,但是系統(tǒng)可能還是在運(yùn)行狀態(tài)(這時候還有wake lock)進(jìn)行任務(wù)的處理,例如在掃描SD卡上的文件等.在嵌入式設(shè)備中,背光是一個很大的電源消耗,所以android會加入這樣一種機(jī)制.

Late Resume是和suspend配套的一種機(jī)制,是在內(nèi)核喚醒完畢開始執(zhí)行的.主要就是喚醒在Early Suspend的時候休眠的設(shè)備.

Wake Lock在Android的電源管理系統(tǒng)中扮演一個核心的角色. Wake Lock是一種鎖的機(jī)制,只要有人拿著這個鎖,系統(tǒng)就無法進(jìn)入休眠,可以被用戶態(tài)程序和內(nèi)核獲得.這個鎖可以是有超時的或者是沒有超時的,超時的鎖會在時間過去以后自動解鎖.如果沒有鎖了或者超時了,內(nèi)核就會啟動休眠的那套機(jī)制來進(jìn)入休眠.

當(dāng)用戶寫入mem或者standby到/sys/power/state中的時候, state_store()會被調(diào)用,然后Android會在這里調(diào)用request_suspend_state()而標(biāo)準(zhǔn)的Linux會在這里進(jìn)入enter_state()這個函數(shù).如果請求的是休眠,那么early_suspend這個workqueue就會被調(diào)用,并且進(jìn)入early_suspend

簡單的說,當(dāng)用戶按power鍵,使得手機(jī)進(jìn)入滅屏休眠狀態(tài),Android系統(tǒng)其實(shí)是做了前面說的一些工作:關(guān)閉屏幕、觸摸屏、傳感器、dump當(dāng)前用戶態(tài)和內(nèi)核態(tài)程序運(yùn)行上下文到內(nèi)存或者硬盤、關(guān)閉CPU供電,當(dāng)然為了支持語音通訊,modern等蜂窩信令還是工作的。

這種情況下,應(yīng)用要喚醒CPU,只有兩種可能:

a)通過服務(wù)器主動PUSH數(shù)據(jù),通過網(wǎng)絡(luò)設(shè)備激活CPU;

b)設(shè)置alarm硬件鬧鐘喚醒CPU;

這里我們重點(diǎn)分析第二種情況。首先來看看什么是alarm硬件鬧鐘。Google官方提供的解釋是:Android提供的alarm services可以幫助應(yīng)用開發(fā)者能夠在將來某一指定的時刻去執(zhí)行任務(wù)。當(dāng)時間到達(dá)的時候,Android系統(tǒng)會通過一個Intent廣播通知應(yīng)用去完成這一指定任務(wù)。即便CPU休眠,也不影響alarm services的服務(wù),這種情況下可以選擇喚醒CPU。

顯然喚醒CPU是有電量消耗的,CPU被喚醒的次數(shù)越多,耗電量會越大?,F(xiàn)在很多應(yīng)用為了維持心跳、拉取數(shù)據(jù)、主動PUSH會不同程度地注冊alarm服務(wù),導(dǎo)致Android系統(tǒng)被頻繁喚醒。這就是為什么雷軍說Android手機(jī)在安裝了TOP100的應(yīng)用后,待機(jī)時間會大大縮短的重要原因。

比較簡單評測CPU喚醒次數(shù)的方法是看dumpsys alarm,這里會詳細(xì)記錄從開機(jī)到當(dāng)前的各個進(jìn)程和服務(wù)喚醒CPU的次數(shù)和時間。通過對比喚醒次數(shù)和喚醒時間可以幫助我們分析后臺進(jìn)程和服務(wù)的耗電情況。Dumpsys alarm的輸出看起來像這樣:

其中544代表喚醒次數(shù),38684ms代表喚醒時間。更詳細(xì)的alarm services相關(guān)資料請參考Google官方定義:

http://developer.android.com/reference/android/app/AlarmManager.html

4)Wake locks持有時間過長會導(dǎo)致耗電增加:

Wake locks是一種鎖機(jī)制,有些文獻(xiàn)翻譯成喚醒鎖。簡單說,前面講的滅屏CPU休眠還需要做一個判斷,就是看是否還有任何應(yīng)用持有wake locks。如果有,CPU將不會休眠。有些應(yīng)用不合理地申請wake locks,或者申請了忘記釋放,都會導(dǎo)致手機(jī)無法休眠,耗電增加。

關(guān)于wake locks的網(wǎng)絡(luò)文章也比較多,也可以參考Google官方文獻(xiàn):

http://developer.android.com/reference/android/os/PowerManager.WakeLock.html

原始數(shù)據(jù):

測試方法:硬件設(shè)備提供穩(wěn)壓電源替代手機(jī)電池供電,在不同場景下記錄手機(jī)平均電流。[!--empirenews.page--]

測試設(shè)備:Monsoon公司的Power Monitor TRMT000141

測試機(jī)型:

3G耗電是WiFi四倍4' />

測試用例:

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉