|
||||
Google Chrome瀏覽器的版本提昇速度確實無人能敵,開發渠道內已經出現了7.0版本,並帶來了重量級新特性:GPU硬件加速。Google也已經官方確認,『Chromium的圖形系統正在進行全新設計』,『開始利用GPU的優勢加快整個渲染模型的速度』。
早些時候的IE9平臺預覽版和不久前的Firefox 4 Beta 4都已經引入了GPU加速功能,如今Google Chrome也正在迎頭趕上,利用圖形處理器的多線程能力加速2D、3D性能。Google表示,該功能已經整合在Chromium的最新Nightly Build版本中,但是開發團隊認為現在還剛剛只是個開始。Google聲稱,將會利用GPU『加速整個渲染模型,包括圖像合成、圖像縮放之類的大量普通2D操作』。
Google Chrome的GPU加速原理是一種新的『沙盒』(Sandbox)機制,藉此將渲染器進程的圖形命令發送到OpenGL或者Direct3D API,從而將一個網頁的渲染分成多個獨立的層,比如CSS、圖像、視頻、WebGL或者3D Canvase。文字、圖像之類的仍然需要依靠CPU,但是WebGL等已經可以通過GPU進行渲染。
以下就是Chromium 7.0.508.0開發版的幾個進程的內存佔用情況對比,包括瀏覽器、標簽、GPU、標簽(診斷)。
硬件加速Google進一步解釋說,如果所有幀渲染完成後再使用GPU進行混合,無疑會抵消GPU的加速效果,所以Chromium現在通過GPU完整最後的幀混合。
Google計劃將越來越多的工作交給GPU進行處理,從而『獲得驚人的提速』。更多細節可參考此文檔。
如果想體驗Google Chromium的GPU加速效果,可以在Chrome快捷方式屬性的目標一欄中添加如下參數:『-enable-accelerated-compositing』。
至於Google Chrome的硬件加速效果如何,下邊看一些簡單測試。參與測試的瀏覽器版本包括:
穩定版:
Google Chrome 5.0.375.127
Google Chrome 5.0.375.127x (x代表添加GPU硬件加速參數,下同)
Beta測試版:
Google Chrome 6.0.472.41 Beta
Google Chrome 6.0.472.41x Beta
開發版:
Google Chrome 6.0.495.0 Dev
Google Chrome 6.0.495.0x Dev
Canary(金絲雀)分支:
Google Chrome 7.0.500.1 Canary
Google Chrome 7.0.500.1x Canary
Nightly Build(每日構建):
Google Chromium 7.0.503.0 (57020) Nightly
Google Chromium 7.0.503.0x (57020) Nightly
參與對比的兩個瀏覽器則是
Firefox 4 Beta 5-Pre (預測試版)
Internet Explorer 9 PP4 (平臺預覽版四)
Safari、Opera完全不支持GPU硬件加速,故不再測試。
1680×933分辨率下,Chrome 7 Nightly的速度達到了穩定版和測試版的三倍、開發版的兩倍,體現出了一定的加速效果,但是Canary分支開啟硬件加速後直接崩潰。你可能會問這裡為什麼沒有Firefox 4、IE9,往下看你就知道了。
Firefox 4 Beta 5-Pre、IE9 PP4的速度均達到了Chrome 7 Nightly的將近150倍,放在同一個圖表裡將使後者完全不可見。
同時需要指出的是,Psychedelic Wheel的測試結果非常依賴於屏幕大小。IE9在全屏和窗口模式下性能都保持了最高水准,Chrome則會隨著窗口的縮小而迅速提速,900×600之下就能達到190,盡管依然遠遠不及測試對手,但已經比高分辨率下加快了15倍。
不管是SunSpider還是Google V8,顯然都是越新越快,Chrome 6測試版、開發版,Chrome 7 Canary分支、Nightly分支都要比Chrome 5穩定版快大約七分之一(只有Canary在SunSpider測試中開啟硬件加速後異常)。
對比Firefox 4、IE9,Google Chrome在兩項JavaScript性能測試中都要好得多,尤其是Google V8。
最後提一句,Google Chrome雖然一向以體積輕巧而著稱,但是隨著功能特性的日漸豐富,安裝包也在明顯膨脹。Chrome 5五月份加入Flash後為53999KB,七月份略微上漲為55509KB,編譯於8月16日的最新Chrome 6 Nightly再次增大為57135KB,Chrome 7的未壓縮Nightly版本已經達到60264KB。