什麼是硬體加速?

Mozilla 的說法,硬體加速分成內容加速和構成加速兩個階段:

內容加速(Content Acceleration)

指的是 CSS 邊界、文字和圖片等網頁基本內容經由硬體加速,並可以加快 2D Canvas 的處理速度。

構成加速(Compositing Acceleration)

這是指將已經渲染(render)的物件組成最終網頁的過程,其中也包含了像是淡入和淡出這種 CSS 特效與 3D 物件的組成,支援構成加速的瀏覽器可以用更快的速度處理最終網頁的顯示,並使特效更為流暢。

不過根據微軟的說法,還必需加上桌面構成加速(Desktop Compositing Acceleration)才能稱為 Full Hardware Acceleration。桌面構成是指網頁顯示在螢幕上的最終構成階段。

Opera 11.50 參戰,四大瀏覽器 開硬體加速尬車

▲微軟認為要三個階段都能啟動硬體加速才能稱為「Full Hardware Acceleration」(圖片來源:IEBlog

硬體加速的技術

目前每個瀏覽器使用的硬體加速都不盡相同,都採取對各自最有利的架構建立自己的瀏覽器硬體加速功能。目前常見的是微軟的 DirectX加速功能,包含 D3D、D2D 和 DirectWrite,另一個則是 Khronos 的 OpenGL 加速。使用 DirectX 的好處是不需特定的顯示卡驅動,因為已經包含在 Windows 中了;而 OpenGL 則是開放式標準,不像 D3D 只能在 Windows 平台上使用,在全平台都可以看到 OpenGL 支援,甚至連智慧型手機上都可以使用呢!

Opera 和 Firefox 4 RC1 與 Chrome 一樣,都採用 OpenGL 做為構成加速的技術,不過在 2D 內容物件的加速上,Firefox 4 採用微軟的 Direct2D(Windows平台)、Quartz(OS X)或 XRender(Linux平台)處理 2D 物件的組成,而 Google 和 Opera 目前則全程使用 OpenGL 加速所有可加速的元件。Google 採用 Google Angle 對應 D3D 的功能,而 Opera 在其開發部落格的文章中表示,將來他們將在Windows平台下支援 D3D 加速,以彌補僅有特定顯卡支援 OpenGL 的缺點。

硬體加速的限制

目前常用的硬體加速平台都有缺點,DirectX 方案的硬體加速只能在 Windows 平台上使用,其中 D2D 和 DirectWrite 更是只在 Windows Vista/7 平台下才支援。而 OpenGL 雖然有 Google、Firefox 和 Opera 等眾多瀏覽器支援,而且能夠跨平台,不過不是每一張顯卡都提供支援 OpenGL 的驅動程式,使得 OpenGL 的發展受到限制。

 (下一頁 瀏覽器硬體加速比一比)

使用 Facebook 留言

9fdecebac79780c7db02b8dc286873a2?size=48&default=wavatar
1人給推

3.  怪爪 (發表於 2011年3月11日 19:56)
Opera加油, 比FF跟IE好用多了!

但還有些地方需要改進.(我用Opera 11.01
Ffe597842f915bc0aab0f07c0b647e93?size=48&default=wavatar
4.  邱睪 (發表於 2011年3月11日 20:23)
CHROME掛了一些附加原件以後
速度會明顯往下掉
所以...是不是找乾淨的CHROME再跑一次比較客觀
25a797bbd90c7f07f37b110e4dd8c2c8?size=48&default=wavatar
11.  kk (發表於 2011年3月13日 16:39)
※ 引述《to bad》的留言:
> FF越用越難用...Chrmore好用多了

Chrmore 的介面不習慣 ╮(╯_╰)╭
而且附加元件也沒有 FF 好用
(與其用 Chrmore 還不如用 IE9,
速度相差不大,又可以看 IE-Only 的網站)
516b6d73d9fb067d71817fd4e0fac549?size=48&default=wavatar
14.  棒棒堂 (發表於 2011年3月13日 21:49)
HTML 5的时代来临了,尤其是一些游戏,都开始搞这个了。相应的配套都要做上去。好了,我的博客就是讲述浏览器游戏的。呵呵,希望不被拉黑。 http://onwebgames.com
Mengkuei Hsu
15.  Mengkuei Hsu (發表於 2011年3月14日 11:10)
※ 引述《邱睪》的留言:
> CHROME掛了一些附加原件以後
> 速度會明顯往下掉
> 所以...是不是找乾淨的CHROME再跑一次比較客觀

可是我跑過完全沒外掛的 Canary 版,在這個測試裡是差不多的。
Mengkuei Hsu
16.  Mengkuei Hsu (發表於 2011年3月14日 11:13)
※ 引述《1424688896》的留言:
> 但是我是在用着chrome,刚做了fishietank,也可以达到1000fish/60fps呀.....

瀏覽器硬體加速測試和使用平台有影響,也許你的 cpu 和顯卡不錯呢。

發表回應

謹慎發言,尊重彼此。按此展開留言規則