'華為方舟編譯器已啟動開源'

"

華為官方微信近日發文顯示,方舟編譯器已於8月31日開源。

方舟編譯器是一種靜態的編譯方式,是華為公司為了提升Android系統的編譯效率推出的一項系統及應用的編譯和運行機制。不同安卓的系統運行基於虛擬機之上,方舟編譯器將繞過虛擬機,以加大編譯執行的效率。

"

華為官方微信近日發文顯示,方舟編譯器已於8月31日開源。

方舟編譯器是一種靜態的編譯方式,是華為公司為了提升Android系統的編譯效率推出的一項系統及應用的編譯和運行機制。不同安卓的系統運行基於虛擬機之上,方舟編譯器將繞過虛擬機,以加大編譯執行的效率。

華為方舟編譯器已啟動開源

安卓系統的運行以及方舟編譯器的運行(圖源:網絡)

此外華為方舟編譯器的靜態編譯方式可將語言裡的動態特性直接翻譯成機器碼,手機安裝程序應用後即可全速運行,極大提高系統的運行效率。

據華為官方介紹,方舟編譯器還將對於系統進行以下兩個方面的提升:

一、EMUI 9.1對系統主要服務System Server進行靜態編譯化,帶來了系統流暢度提升24%,系統響應性能提升44%以上的收益。

二、微博極速版實現了靜態化編譯後,流暢度提升高達60%。

據悉,目前市場上不管是Android應用還是iOS應用,它們想要在CPU上運行,都需要經過翻譯或者編譯成機器碼。安卓APP所通用的執行則是安卓編譯器,安卓編譯器在運行的時候,則是通過一種「編譯執行」的模式運行,該模式主要分為兩種:JIT(Just-in-time,即時編譯),邊運行邊編譯;AOT(Ahead-Of-Time,運行時編譯),在程序運行前編譯,可以避免在運行時的編譯性能消耗和內存消耗。

就Android系統而言,JIT 在運行時編譯開銷大,容易造成卡頓。而AOT運行時需要全面翻譯,用戶等待安裝的時間過長,且安裝過程中翻譯出來的機器碼佔用了大量的內存空間。

"

華為官方微信近日發文顯示,方舟編譯器已於8月31日開源。

方舟編譯器是一種靜態的編譯方式,是華為公司為了提升Android系統的編譯效率推出的一項系統及應用的編譯和運行機制。不同安卓的系統運行基於虛擬機之上,方舟編譯器將繞過虛擬機,以加大編譯執行的效率。

華為方舟編譯器已啟動開源

安卓系統的運行以及方舟編譯器的運行(圖源:網絡)

此外華為方舟編譯器的靜態編譯方式可將語言裡的動態特性直接翻譯成機器碼,手機安裝程序應用後即可全速運行,極大提高系統的運行效率。

據華為官方介紹,方舟編譯器還將對於系統進行以下兩個方面的提升:

一、EMUI 9.1對系統主要服務System Server進行靜態編譯化,帶來了系統流暢度提升24%,系統響應性能提升44%以上的收益。

二、微博極速版實現了靜態化編譯後,流暢度提升高達60%。

據悉,目前市場上不管是Android應用還是iOS應用,它們想要在CPU上運行,都需要經過翻譯或者編譯成機器碼。安卓APP所通用的執行則是安卓編譯器,安卓編譯器在運行的時候,則是通過一種「編譯執行」的模式運行,該模式主要分為兩種:JIT(Just-in-time,即時編譯),邊運行邊編譯;AOT(Ahead-Of-Time,運行時編譯),在程序運行前編譯,可以避免在運行時的編譯性能消耗和內存消耗。

就Android系統而言,JIT 在運行時編譯開銷大,容易造成卡頓。而AOT運行時需要全面翻譯,用戶等待安裝的時間過長,且安裝過程中翻譯出來的機器碼佔用了大量的內存空間。

華為方舟編譯器已啟動開源

編譯執行模式的過程(圖源:網絡)

此外,官方還介紹到方舟編譯器還帶來了新的系統垃圾回收機制。相比於安卓的垃圾回收機制的集中回收,方舟編譯器則會獲取目標對象的大小和優先級,將所述目標對象的大小和優先級分別於相應的預設閾值進行比較,根據比較結果對應的控制策略,使用系統垃圾回收期所述目標對象所佔用的內存。

簡單的來說就是不會像Android目前編譯器使用的Java虛擬機那樣,系統不停的地自動回收內存垃圾,以保證內存不會溢出。而是當內存低於某個標準值後,它就會自動殺掉優先級低的進程,以防止隨機性的卡頓。即隨用隨回收,不用就暫停應用。

"

華為官方微信近日發文顯示,方舟編譯器已於8月31日開源。

方舟編譯器是一種靜態的編譯方式,是華為公司為了提升Android系統的編譯效率推出的一項系統及應用的編譯和運行機制。不同安卓的系統運行基於虛擬機之上,方舟編譯器將繞過虛擬機,以加大編譯執行的效率。

華為方舟編譯器已啟動開源

安卓系統的運行以及方舟編譯器的運行(圖源:網絡)

此外華為方舟編譯器的靜態編譯方式可將語言裡的動態特性直接翻譯成機器碼,手機安裝程序應用後即可全速運行,極大提高系統的運行效率。

據華為官方介紹,方舟編譯器還將對於系統進行以下兩個方面的提升:

一、EMUI 9.1對系統主要服務System Server進行靜態編譯化,帶來了系統流暢度提升24%,系統響應性能提升44%以上的收益。

二、微博極速版實現了靜態化編譯後,流暢度提升高達60%。

據悉,目前市場上不管是Android應用還是iOS應用,它們想要在CPU上運行,都需要經過翻譯或者編譯成機器碼。安卓APP所通用的執行則是安卓編譯器,安卓編譯器在運行的時候,則是通過一種「編譯執行」的模式運行,該模式主要分為兩種:JIT(Just-in-time,即時編譯),邊運行邊編譯;AOT(Ahead-Of-Time,運行時編譯),在程序運行前編譯,可以避免在運行時的編譯性能消耗和內存消耗。

就Android系統而言,JIT 在運行時編譯開銷大,容易造成卡頓。而AOT運行時需要全面翻譯,用戶等待安裝的時間過長,且安裝過程中翻譯出來的機器碼佔用了大量的內存空間。

華為方舟編譯器已啟動開源

編譯執行模式的過程(圖源:網絡)

此外,官方還介紹到方舟編譯器還帶來了新的系統垃圾回收機制。相比於安卓的垃圾回收機制的集中回收,方舟編譯器則會獲取目標對象的大小和優先級,將所述目標對象的大小和優先級分別於相應的預設閾值進行比較,根據比較結果對應的控制策略,使用系統垃圾回收期所述目標對象所佔用的內存。

簡單的來說就是不會像Android目前編譯器使用的Java虛擬機那樣,系統不停的地自動回收內存垃圾,以保證內存不會溢出。而是當內存低於某個標準值後,它就會自動殺掉優先級低的進程,以防止隨機性的卡頓。即隨用隨回收,不用就暫停應用。

華為方舟編譯器已啟動開源

方舟編譯器的系統垃圾回收機制(圖源:網絡)

對於如此重要的技術成果華為為什麼會選擇開源?華為解釋道,一方面是出於對讓消費者能夠享受到極致性能的手機這一理念的實踐。另一方面,華為指出安卓陣營的做大做強有賴於每一位開發者的參與,也只有這樣才能將無處不在的極致體驗真正帶給每一位消費者。

亞洲時報 綜合

責任編輯:楊穎

特別聲明: 本站轉載或引用之圖文若侵犯了您的合法權益,請與本站聯繫,本站將及時更正、刪除。版權問題及網站合作,請通過亞時中文網郵箱聯繫:[email protected]

"

相關推薦

推薦中...