自華為P30系列發布以來,火了的除了手機新品本身以外,還有近日越來越“紅”的黑科技——華為方舟編譯器。
改造Android、媲美iOS、安卓手機從此不卡頓……一時間,輿論對華為方舟編譯器的渲染近乎神話。據說自發布會結束后,華為軟件內部團隊的電話幾乎被打爆,很多開發者都想了解方舟編譯器的更多信息。
那么,華為方舟編譯器究竟是干嘛的?被余承東稱為“安卓性能革命”的方舟編譯器對于華為手機的戰略發展有何意義?對于Android陣營以及整個產業又將帶來哪些影響呢?
傳統編譯器繞不過去的“坎兒”
首先,來看看啥是編譯器?
按照定義:編譯器是將“一種語言(通常為高級語言)”翻譯成能直接被計算機或虛擬機執行的目標代碼,編譯器的效率將直接影響程序運營性能和效率。
簡單來說,編譯器就是人類和機器溝通的橋梁。比如一部手機,里面的程序是由程序員使用高級語言開發的,當我們要啟動某個程序(比如打開一個APP)的過程中,編譯器扮演著“翻譯者”的角色,把高級語言轉換成機器能讀懂的機器碼,并按照指令運行。
編譯器如此神通廣大,但在安卓的世界里,它卻有一道繞不過去的“坎兒”那就是VM。VM是運行在安卓程序中的一個虛擬計算機,它還帶了2個翻譯——解釋器和編譯器。當用戶打開APP過程中,虛擬機開始運行,為了把高級語言轉換成機器能聽懂的語言,虛擬機中有解釋器和編譯器兩個翻譯在運行;解釋器好像現場翻譯似的,演講者講一句它就停下來翻譯一句給編譯器聽,然后編譯器結合上下文一次翻譯一大段內容讓機器聽懂。兩個翻譯同時發聲,手機聽到的內容只能是斷斷續續,一邊翻譯一邊執行,這也是安卓卡頓的一個重要來源。
對此,華為消費者BG軟件部總裁王成錄指出,目前安卓系統主要在手機上進行編譯,雖然谷歌一直在不斷提升原生安卓編譯器效率,比如安卓5.0版本之前安卓采用解釋執行+JIT方式,安卓6.0開始嘗試ART虛擬機,再之后采用解釋執行+JIT+AoT綜合模式。不過為了解決安卓程序開發的兼容性問題,ART虛擬機長期存在,安卓編譯器可以通過JIT和AoT編譯大部分Java語言,但對于Java的動態特性無能為力,仍然需要邊解釋邊執行,這也導致了安卓系統流暢性下降。
四大亮點
從“邊翻譯邊執行”到提前編譯機器碼
針對安卓系統面臨的流暢性問題尤其是編譯器問題,華為方舟編譯器的特性恰恰能夠繞過VM,消除虛擬機動態編譯的額外開銷,實現了開發和運行效率的兼容并舉,從“邊翻譯邊執行”到提前編譯機器碼,直接執行。
據王成錄介紹,華為方舟編譯器主要有以下四大亮點:
亮點1.首個多語言聯合優化的編譯器,消除了跨語言調用開銷。當前大部分安卓應用都涉及不同開發語言,不同語言形成的代碼需要在運行態中進行協同從而產生額外消耗,而方舟編譯器是業界首個多語言聯合優化的編譯器,開發者在開發環境中可以一次性將多語言統一編譯為一套機器碼,運行時無需產生跨語言帶來的額外消耗,并可以進行跨語言的聯合優化,提升運行效率。
亮點2.程序運行時無需依賴虛擬機,減少了資源占用,同時實現了高效的內存回收機制。
亮點3.第三,方舟編譯器可以針對不同應用靈活編譯優化。
亮點4.對于開發者學習和使用成本非常低。以上這些技術亮點,均能給應用開發者帶來更多優化自己應用的機會。
超越蘋果三星的重要加碼
用華為的話說,方舟編譯器編譯的應用在開發階段就已完成。也就是說,只要是經過編譯器編譯的應用,在應用市場上上架了以后,用戶下載的就是編譯過的了。
華為測試結果顯示,使用方舟編譯器最終將提升24%的系統操作流暢度,提升44%的系統響應能力,以及提升60%的三方應用操作流暢度,“Android系統將比iOS系統還要流暢”。這一技術將正式開源給開發者,讓所有人都可以使用方舟編譯器對應用預編譯。
在華為看來,方舟編譯器作為全新的系統及應用的編譯和運行機制,從DNA層面對安卓進行了改造,解決了安卓應用邊解釋邊運行的低效問題,讓手機能直接聽懂“高級語言”,可以說是近幾年來安卓陣營最大的根本性革新。能夠大幅降低安卓系統隨機卡頓的問題,打破了人機之間的藩籬,讓用戶能直觀感受到的就是使用體驗更加持久流暢。
筆者認為,也許采用方舟編譯器之后安卓系統以及應用將比iOS系統還要流暢這個說法可能言過其實,因為iPhone和其搭載的iOS系統獨樹一幟、在系統流暢性方面仍然領先安卓。但有了方舟編譯器,安卓系統流暢性差、應用開啟和運行速度勢必將得到大幅提升,縮小與iOS的差距,華為也成為首家在系統層面主動尋求顛覆式創新的手機廠商。
對于志在超越蘋果的華為來說,縮小安卓與iOS系統流暢性的差距,也將助力華為手機在超越蘋果尤其是高端市場更進一步增加實力;而對于超越三星成為成全球第一手機廠商的目標來說,雖然方舟編譯器將正式開源給開發者,使用方舟編譯器對應用進行預編譯的APP也可能將在其他品牌手機上適配使用,但估計華為出品的方舟編譯器應該還是在華為自家的EMUI系統上更加匹配、性能才能夠得到充分發揮,因此對于旨在超越三星奪冠的華為來說,方舟編譯器也將成為其爭冠之路上的重要砝碼。
-
華為
+關注
關注
216文章
34519瀏覽量
252514 -
蘋果
+關注
關注
61文章
24446瀏覽量
199486 -
編譯器
+關注
關注
1文章
1640瀏覽量
49222 -
方舟編譯器
+關注
關注
0文章
60瀏覽量
229
原文標題:媲美iOS?華為方舟編譯器真有那么玄乎嗎?
文章出處:【微信號:C114-weixin,微信公眾號:C114通信網】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論