ART:提升安卓性能承諾兌現

科技評論2,381閱讀模式

 垃圾回收
Android虛擬機是自動內存管理。優點是,開發者無需擔心內存管理,缺點是,開發者失去了控制權,依賴于系統本身的機制。Dalvik的垃圾回收機制是造成系統卡頓的原因之一。在Dalvik虛擬機下,啟動垃圾回收機制會造成兩次暫停(一次在遍歷階段,一次在標記階段)。所謂暫停,就是應用的所有線程都不再執行。如果暫停時間過長,應用渲染中就會出現掉幀。用戶體驗上來說,就是應用運行的時候出現卡頓。
Google宣稱,Neuxs 5的平均暫停時間是54ms,結果就是,每次垃圾回收啟動,平均掉幀是4幀。如果應用編寫的不好,情況會更加糟糕。Anandtech測試了FIFA游戲。Dalvik環境下,啟動應用的幾秒內,垃圾回收啟動9次,應用暫停時間總和603ms,總共掉幀是214幀。在ART下,情況有了極大改善。同樣時間里,應用暫停時間總和是12.364ms(4次前臺垃圾回收,2次后臺垃圾回收),總共掉幀是63幀。
ART能夠做到這一點,是因為應用本身做了垃圾回收的一些工作。垃圾回收啟動后,不再是兩次暫停,而是一次暫停。在遍歷階段,應用不需要暫停,而標記階段的暫停時間也大大縮短,因為Google使用了一種新技術(packard pre-cleaning),在暫停前就做了許多事情,減輕了暫停時的工作量。Google承諾說,他們已經把平均暫停時間降到了3ms,遠遠超過Dalvik的垃圾回收。
與此同時,Google還改進了內存分配系統,把分配速度加快了10倍。垃圾回收算法也進行了修改,以增強用戶體驗,避免應用被打斷。

 64位支持
ART支持64位系統,這會帶來性能上的提升,加密能力的大幅改進,同時保持與現有32位應用的兼容性。與蘋果不同的是,Google使用了指針壓縮,以避免轉換到64位后,空間占用大幅增加,其虛擬機仍然是32位指針。
Google宣稱,現有Play Store上應用中,85%都可以轉移到64位,剩下的15%有原生代碼,需要重新編譯。總的來說,轉移到64位應該會在短時間內完成。
總結
從許多方面來說,Google兌現了其提升性能的承諾,解決了困擾Android的諸多問題。Android的一些致命弱點,原因在于非原生應用和自動內存管理系統,ART在這些方面做出了大量改進。總之,在應用的流暢度和性能方面,Android終于可以與iOS一決高下了。

 
  • 本文由 米粒在線 發表于 2014年7月7日12:49:02
  • 轉載請務必保留本文鏈接:http://m.bjmhhq.com/25449.html
SEO相關

給數據庫做分表處理

對于WordPress數據庫的posts文章表很大,怎么優化是個頭疼的問題。想到了分表就想嘗試下。做個記錄。原創記錄文章,轉載請注明出處。優化WordPress數據庫中的posts表,可以從以...
科技

三折秒殺!京東年貨節正式啟動

明天,1月10日,農歷臘月初八,臘八節。今天,1月9日,20點,京東正式啟動了一年一度的年貨節大促活動,各種優惠促銷紛紛開啟。京東官方也奉上了京東超級秒殺日必買清單,不少產品半價,有的...
生活道理

熬夜如何改變了我們的身體

熬夜的危害有很多,如:經常感到疲勞,免疫力下降:人經常熬夜造成的后遺癥,最嚴重的就是疲勞、精神不振;人體的免疫力也會跟著下降,感冒、胃腸感染、過敏等等自律神經失調癥狀都會出現。 頭痛:熬夜的隔天,上班...

發表評論

匿名網友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
確定

拖動滑塊以完成驗證