強制進行GPU渲染是否開啟的問題?
對於很多的智能手機來說,GPU是一個非常重要的組件。而在Android4.0系統當中可以看到開發者選項當中加入了強制GPU渲染功能,這個功能可以說是對智能手機圖形處理的一個很好補充。 作為Android 4.0的新功能,用戶可以在開發者選項當中強製為程序進行GPU渲染加速,GPU的渲染的速度將會降低CPU負擔以更快的處理,因此會一定程度上提高用戶體驗。不過對於普通用戶來說GPU加速同樣是一把雙刃劍,個別應用無法通過GPU加速因此會造成程序縮寫,崩潰。同時強制GPU加速功能會增加功耗,降低待機時間。因此使用的時候還需要多加註意。1、兼容4.0的新版軟體總會進行GPU加速,與開不開這個選項無關。2、打開「強制進行GPU渲染」後,不支持GPU加速的軟體也強制GPU渲染,這有可能會造成程序無響應、死機等兼容性問題。 後話:我建了一個手機交流的群:298595213,打廣告的就不要來了,懶得T,
入群驗證碼填{知乎}就行了
我就說一個。
覺得QQ某些界面掉幀特別嚴重的話,比如群介紹、設置等等,然後你打開GPU強制渲染——
世界頓時變得美好了。
Android的系統架構上負責圖形顯示這部分應該是Skia這層做的吧。一般來說,開發者應該是不會跳過這層直接去操作底層的Linux系統API吧(比如GPU驅動,OpenGL之類的--嗯,這個不是Linux底層的),應該都是使用的Android SDK提供的各種封裝好的API,如果是這樣的話,如果開啟了GPU的硬體加速,那麼用硬體API會比用CPU模擬的軟體API的效率要高,理論上也應該更省電才是啊。當然,如果直接使用了Android NDK,那就另當別論了我也是懂一點點而已,把自己的想法表達出來
很多朋友的安卓手機用了一段時間都會感覺變卡,這時候去網上搜解決辦法,絕大多數的網站都會告訴你在【開發者選項】中打開【強制進行GPU渲染】(強制使用GPU進行2D繪圖),有時候打開後的確會變流暢許多,但真的是這樣嗎?
CPU/GPU的調度
一般來說,手機上2D渲染都是CPU來完成的,也就是處理器。
而GPU(相當於顯卡)的職責一般是進行3D繪圖。
GPU的繪圖速度更快,但相應的功耗也更大,會帶來更大的發熱及耗電。2D渲染的任務不重,交給CPU就可以低耗能地完成。
手機變卡:CPU瓶頸
CPU既要計算,又要繪圖,壓力肯定很大。所以就有人想到把2D渲染的任務也交給GPU,這樣CPU只要負責計算,運行速度就快了不少。
但這樣做有幾個很明顯的弊端:
- 部分應用不兼容(非常之少)
- 發熱
- 耗電
所以開不開強制GPU渲染就只是功耗和流暢之間的取捨嗎?
不,不是的。
這與手機的配置也有很大的關係。
像高通的Soc,本身GPU非常強壯,把2D渲染的任務交給它簡直就是牛刀殺雞。
但像是MTK,GPU一直是性能瓶頸,把2D渲染任務扔給它,可能還不一定能保質保量地完成,這時候不開強制才是最好的選擇。
舉個栗子(數據瞎編)
- 不開強制GPU,日常應用20FPS,穩定運行。
- 打開強制GPU,日常應用25FPS,使用五分鐘後GPU溫度過高,自動降頻,CPU跟著一起降,15FPS。
如果不清楚自己的CPU、GPU性能狀況的可以去看下CPU、GPU單獨的跑分,再日常加以取捨。
一般來說,為了更高的續航,強制GPU不推薦開啟。特別是對於目前的旗艦機來說。甚至是三年前的驍龍801,雖然每個應用打開速度都有0.5s左右的延遲,但換來的幾個小時續航時間還是非常值得的。
強制GPU進行2D渲染可以增加2D應用程序的流暢度,但有兩個缺點:
這個功能是安卓4.0及其以上版本才有,有些較老的應用程序不支持強制GPU渲染,可能會出現假死,閃退等現象
開啟後會增加功耗,也就是耗電量,使得手機續航時間減少。
如果你的手機CPU性能不高,運行軟體不流暢,建議開啟;如果你的手機CPU性能較強,運行程序很流暢,建議關閉。
現在820 950 8890什麼的開這個效果不明顯,老機器可以開下,會更耗電
我開了沒啥感覺
推薦閱讀:
※如何看待 2015 年 3 月 5 號魅族 MX4 Pro 降價?
※作為小米 MIX 用戶,你的使用感受如何?
※Android 手機是否會越用越卡?
※360免費wifi的原理是什麼?有無竊取手機記錄的wifi數據?
※如何防止 Android 應用被二次打包?