V8團隊:JavaScript 真實效能

谷歌開發者_發表於2017-05-02

640?wx_fmt=gif

640?wx_fmt=jpeg

文 | Google V8 跟蹤評論員 Seth Thompson


V8 JavaScript 引擎是 Chrome 中實現快速瀏覽的關鍵因素。過去的一年來,V8 團隊研究出一種新方法,可根據真實網頁快照度量效能。在過去的一年中,藉助從實際度量中獲取的資訊,V8 團隊將 Chrome 平均網頁載入速度提升了 10%-20%。


過去,類似 V8 這樣的 JavaScript 引擎使用 Octane 等基準測試程式,來提升 JavaScript 的“峰值”效能,即熱迴圈中 CPU 密集型指令碼的效能。去年初,V8 團隊開始測試 Reddit、Twitter、Facebook 和 Wikipedia 等廣受歡迎的網頁的快照,以便更真實地度量效能。此項分析表明,峰值效能有利於執行某些型別的大型網路應用,而瀏覽一般網站更多地依賴於“啟動”效能或開始執行指令碼時的速度。藉助從真實效能資料中收集的資訊,V8 團隊實施優化,使 Chrome 56 相對於 Chrome 49,平均網頁載入速度提升了 10%-20%,具體取決於 CPU 架構。


通過網頁快照,還可以分析各種基準測試程式與實際網路工作負荷之間的差異。儘管沒有哪個基準測試程式可以代表所有網站,但 Speedometer 基準測試程式包含 React、Angular、Ember 和 jQuery 等實際網路框架,可以大致度量出許多網站的效能。在上述啟動優化中可以發現這種相似性,此類優化也使 Chrome 的 Speedometer 分數提升了 25%-35%。相反,將網頁快照與 Octane 對比發現,Octane 在度量大多數網站的大致效能方面表現不佳。鑑於 Octane 在多個網路瀏覽器中的分數表現平平,且峰值效能過度優化,我們決定棄用此基準測試程式,不再將其作為 JavaScript 真實效能的通用度量方法。


640?wx_fmt=png

▲ 過去一年裡,V8 效能優化使 Chrome 的 Speedometer 分數提升了 25%-35%


未來,我們計劃針對網路上出現的新型指令碼模式釋出更多的 JavaScript 效能增強功能,包括最新的內容庫、多種框架和 ES2015+ 語言功能等。由於我們是對真實網站而非傳統基準測試程式進行度量,因此,我們能更好地優化對使用者和開發者最為重要的 JavaScript 模式。為了度量實際效能,我們設計了全新的引擎架構,敬請關注相關更新。


瞭解更多細節,檢視文內所有連結,請點選文末“閱讀原文”。


推薦閱讀:

推出面向網站開發者的Mobile Sites認證

Android Studio 2.4 Preview 6釋出,支援Java 8語言功能

Chrome 58測試版釋出,有哪些新特性?

全球皆可訪問的 Google Codelabs 網站


640?wx_fmt=gif

點選「閱讀原文」,檢視文內連結640?wx_fmt=gif

相關文章