看板 Browsers 關於我們 聯絡資訊
當微軟在 Windows 7/Vista 導入 Direct2D/DirectWirite API,也替瀏覽器在 效能上的發展開啟一扇窗,瀏覽器可以將一些比較比較耗資源的運算如 SVG、 Canvas、文字渲染等從 CPU 轉嫁到 GPU 上頭,讓平時多處於閒置的顯示卡來 分攤處理器的運算,來達到更快的瀏覽經驗,在各家瀏覽器中,IE9 Beta, Firefox 4 Beta 以及 Google Chrome Dev 7 也都陸陸續續導入硬體加速的功 能,下面的測試就是想看看硬體加速能夠實際為使用者帶來多少效益。 如何啟用/關閉硬體加速 ===================================================================== Internet Explorer 9 Beta 當使用者安裝最新的 IE9 Beta 時,微軟預設已經啟用硬體加速,如果要取消 硬體加速,進入瀏覽器"網際網路選項"下方的進階分頁,取消"加速圖形"的分 項即可達成 Firefox 4 Beta 6 or After Mozilla 在 Firefox 4 Beta 5 之後也加入硬體加速的功能,網路上一般流傳 的開啟方式如下: 1. 開啟瀏覽器,在網頁輸入欄位鍵入 about:config 2. 在 Filter 處鍵入 : render 3. 這時後會在下方的各項參數設定中找到修改項目 gfx.font_rendering.directwrite.enabled --> 修改為 True mozilla.widget.render-mode --> 修改為 6 4. 關閉 Firefox,重新啟動火狐,就可以開啟硬體加速功能 5. 如果要關閉硬體加速功能,則是將 render-mode 修改為 0 不過在 Beta 6 之後,Mozilla 就將硬體加速設定為預設開啟,也因為如此, 上面的修改方式跟實際測試的時候發現了一些詭譎的地方,後面的測試中會一 併提出 至於 Firefox Nightly Build ,瀏覽器預設自動開啟 Direct2D 加速, 使用者 可以輸入 about:support 看到 Direct2D Enabled: true,不過使用者可以透 過開啟 Safe Mode 或者進入進階模式中取消硬體加速功能 Google Chrome Dev 7.0.517 or After Google Chrome 在 7.0.517 之後加入硬體加速的功能,為了維持自身 sandbox 的架構,Google 將硬體加速獨立成 Plug-in 的方式,就像之前的 Adobe Flash Player、Chrome PDF Viewer 一樣的外掛程式,當網頁中有需求的時候 才會啟用"GPU Process",在目前最新版本的 Dev 中,硬體加速預設是關閉的 ,使用者必須在捷徑的命令列中加入參數才能開啟,坊間看到的訊息通常是建 議使用者加入"--enable-accelerated-compositing" 不過在實際使用的過程中,發現一些論壇會建議加入一些額外的參數來達到最 佳效果,所以下面的測試參數為: "--enable-accelerated-compositing --enable-gpu-plugin --enable-gpu-rendering --enable-accelerated-2d-canvas" (請自行接起來) 效能測試網站 ===================================================================== 測試網站 : Asteroids HTML5 Canvas 2D Rendering and JavaScript Benchmark 網站連結 : http://www.kevs3d.co.uk/dev/asteroidsbench/ 網站介紹 : 測試網頁本身是利用所提用 HTML5 語法寫的小遊戲來測試瀏覽器 執行 HTML5 drawImage、drawImage scaling、alpha、composition 、shadows 以及 text functions 的效率 測試網站 : Hardware Acceleration Stress Test 網站連結 : http://demos.hacks.mozilla.org/openweb/HWACCEL/ 網站介紹 : Mozilla 推出來測試瀏覽器對於 2D HTML canvas 的硬體加速效能 測試網站 測試網站 : FishIE Tank 網站連結 : http://goo.gl/yf4w 測試網站 : Speed Reading 網站連結 : http://goo.gl/OybX 網站連結 : 上面兩者皆為由微軟推出的頌揚 IE9 的效能測試網頁 測試結果 ===================================================================== Hardware Acceleration Stress Test http://goo.gl/WMKB HAST 是 Mozilla Hacks 部落格上頭所釋出的硬體加速測試網頁,幾套瀏覽器 在開啟硬體加速之後,在速度上都有顯著的增加,不過 IE9 Beta 雖然不像 Google Chrome 那麼誇張的張數,不過感覺瀏覽器本身有限速 FishIE Tank http://goo.gl/0BmA Speed Reading http://goo.gl/gBDe FishIE Tank 跟 Speed Reading 都是微軟釋出的測試網頁,不過可以看的出來 Google Chrome 跟 IE9 Beta 似乎成熟度比 Firefox 4 Beta 高些 Asteroids HTML5 Canvas 2D Rendering and JavaScript Benchmark http://goo.gl/pOx4 Asteroids 在先前的各瀏覽器效能測試的時候也用過,不過心想既然有用到 HTML5 Cancas 2D Rendering,對於瀏覽器的硬體加速開啟/關閉應該也會有一 定程度的影響,不過卻也意外發現一些很神奇的結果,在 IE9 Beta 的部分, 沒有太多意外,透過 GPU 加速的確有明顯的改善,至於 Google Chrome 不管 是否啟用硬體加速,效能上頭並沒有明顯的變動,不曉得是否可以解讀成 JavaScript 加速引擎夠優良,是否開啟都已經足以達到測試網頁本身的數值上 限,而 IE9 Beta 則是透過 GPU 加速來彌補測試中 JavaScript 測試項目中的 相對弱勢?! 當然這些結果都還在可以接受的範圍,但是最詭異的還是火狐的測試數據,理 論上 Firefox 4 Beta 6 從原始的 (false, -1) 修改為 (true, 6) 和 Firefox Nightly Build 勾選啟動硬體加速,照理說應該比沒有開啟來的要快 ,但是幾次反覆測試,兩者的測試結果都正好相反 (也順便映證 font_rendering 的 true/flase 應該主要是針對字體渲染的部份 ,render-mode 才是整體硬體加速的啟用,不過 Beta 7pre 之後就不需要修改 ,只要選項中勾選啟用與否),這是比較百思不得其解的地方,不過反正還在 Beta,就參考就好 XD 測試總結 ===================================================================== 要先拉出來說明的部份,硬體加速的方案並不只有微軟的 Direct2D,Mozilla 的 WebGL 和 Google 的 Native Client、O3D 也都有提供 API 來讓網頁開發 人員 (3D) 使用硬體加速,不過基本上還是得看市場接受程度,所以上面的測 試還使以通用各瀏覽器的測試網站為主,基本上各大廠依然處於開發測試階段 ,距離使用者能夠實際應用還是需要一時間,簡單的說,就是看熱鬧 XD (如果使用 AMD 顯示卡的使用者,可以去更新 ATI Catalyst™ 10.9 驅動程式 ,有針對Direct2D 及 HTML 5 做到硬體加速技術及效能優化, 這個部份小弟就 不從測了) Ps. 必須承認自己實在沒有排版的天份,自己看得都很難過,想要看 RAW DATA 的朋友就請參考 Google Document http://0rz.tw/Bk7Zk 的 GPU Acceleration Benchmark 分頁,圖文介紹就煩請移駕 http://goo.gl/omx1 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.69.230.190
PhenomII960T:感謝分享~Firefox加油!!! 09/28 00:54
SCYAzure:雖然有點吹毛求疵,不過標點符號不要放在句首比較好 09/28 02:14
DCaty:未看先推! 09/28 02:26
QuentinHu:推好文~~~ 09/28 05:57
hslzh:推 09/28 22:45