V8團隊:JavaScript 真實效能
文 | 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 真實效能的通用度量方法。
▲ 過去一年裡,V8 效能優化使 Chrome 的 Speedometer 分數提升了 25%-35%
未來,我們計劃針對網路上出現的新型指令碼模式釋出更多的 JavaScript 效能增強功能,包括最新的內容庫、多種框架和 ES2015+ 語言功能等。由於我們是對真實網站而非傳統基準測試程式進行度量,因此,我們能更好地優化對使用者和開發者最為重要的 JavaScript 模式。為了度量實際效能,我們設計了全新的引擎架構,敬請關注相關更新。
瞭解更多細節,檢視文內所有連結,請點選文末“閱讀原文”。
推薦閱讀:
Android Studio 2.4 Preview 6釋出,支援Java 8語言功能
點選「閱讀原文」,檢視文內連結
相關文章
- CSS團隊精神:CSS最佳實踐團隊開發CSS
- SkyReach 團隊團隊展示
- VUCA時代,敏捷團隊如何提升效能? | IDCF敏捷
- 如何用研發效能搞垮一個團隊
- 微軟JavaScript團隊向Dart語言潑冷水微軟JavaScriptDart
- “市場無法養活半數團隊”,真實的獨立遊戲主機市場遊戲
- 小團隊管理與大團隊管理
- JavaScript 在 V8 中的元素種類及效能最佳化JavaScript
- (譯)V8 JavaScript引擎JavaScript
- 如何實現高效的團隊合作?
- 研發團隊如何實施OKROKR
- CSS最佳實踐團隊開發CSS
- 團隊作業1——團隊選題&展示
- 團隊作業1——團隊展示&選題
- 團隊競技遊戲要限制團隊配合遊戲
- ACP®|敏捷管理,創造卓越高效能團隊敏捷
- 線上協作助力團隊合作:解析多種高效工具實現團隊協同
- 團隊管理
- Zero團隊
- 團隊分工
- 團隊活動
- 前端團隊前端
- 團隊8
- 團隊如何組織?前後端團隊與業務功能團隊的比較後端
- 還原JavaScript的真實歷史~JavaScript
- 網路時代的團隊:虛擬團隊(轉)
- 團隊作業1——團隊展示與選題
- 實驗八 團隊作業5:團隊專案需求建模與系統設計
- 實驗七 團隊作業4:團隊專案需求建模與系統設計
- 實現快速與團隊成員進行檔案共享,提高團隊辦公效率
- 聊聊SwiftLint在團隊的實踐Swift
- 測試團隊的組建實踐
- 騰訊 IVWEB 團隊 :Canvas 實現 progress 效果WebCanvas
- 提升團隊效能:如何與下屬進行有效溝通
- JavaScript最佳實踐:效能JavaScript
- 花花隊——團隊貢獻分
- 鹹魚翻身隊——團隊展示
- JavaScript獲取圖片的真實大小JavaScript