如今,各大瀏覽器都開始使用硬件來加速圖形性能,IE9 Beta也即將發(fā)布,微軟在此時對比了完全硬件加速和部分硬件加速之間的區(qū)別,向眾人揭示了IE9的優(yōu)越性。
2009年11月的PDC大會上,開發(fā)人員首次見到了瀏覽器是如何使用硬件加速的。2010年3月,微軟發(fā)布了IE9首個平臺預(yù)覽版,默認開啟了GPU加速HTML5功能,將硬件加速運用到了Web頁面的每一個內(nèi)容上,包括文本、圖像、背景、邊框、SVG內(nèi)容和HTML5視頻/音頻,主要使用了Windows DirectX圖形API。在7月發(fā)布的平臺預(yù)覽第三版中,IE9引入了硬件加速HTML5 canvas。
IE9硬件加速
瀏覽器可以使用硬件來加速一個HTML頁面所有步驟中的一些或是全部。
IE9頁面渲染共分為三大階段:
內(nèi)容渲染:IE9在第一個階段使用Direct2D和DirectWrite子系統(tǒng)內(nèi)容渲染的硬件加速;
頁面生成:IE9在這個階段使用Direct3D加速頁面繪制,在渲染圖片密集型任務(wù)時為IE提供優(yōu)異的性能;
桌面生成:在瀏覽器完成內(nèi)容渲染并生成頁面后,Windows Vista和Windows 7會通過Desktop Windows Manager(DWM)使用GPU來生成最終的屏幕顯示畫面。
完整硬件加速VS.部分硬件加速
在IE9中,開發(fā)人員能夠使用完整的硬件加速。實際上,完整利用GPU是一項極具挑戰(zhàn)性的工作,直接寫至中級層和庫而取代操作系統(tǒng)的本地支持就更加困難了,但是Windows的DirectX在對3D游戲的支持中獲取了大量的經(jīng)驗,是當前最高性能的GPU渲染系統(tǒng)。
當你使用其它支持硬件加速的瀏覽器測試IE Test Drive網(wǎng)站上的項目時,你會發(fā)現(xiàn)其性能在某些方面能與IE9不分上下,但是在很多方面相差甚多。這種差距就反應(yīng)了完整硬件加速和部分硬件加速之間的區(qū)別。因為IE支持最新出現(xiàn)的Web標準,它們也可以使用完整的硬件加速。
HTML5視頻的硬件加速就是一個例子,在MIX10大會上,微軟演示了使用硬件加速視頻的效果;3月份的時候微軟還演示了在一臺上網(wǎng)本上播放兩個高清720p視頻,而且僅占用了極少的CPU,其它瀏覽器卻累慘了CPU,還出現(xiàn)了丟幀現(xiàn)象。