|
||||
在微軟公司公布的新一代瀏覽器IE9中,帶有硬件加速功能是該瀏覽器的最大亮點所在。為了使大家能更好的了解這個新功能,下面我們將用具體的例子對其進行詳細介紹。
我們在研發互聯網瀏覽器IE9時一直以充分利用現代個人電腦硬件優勢使瀏覽器速度更快為目標。作為瀏覽器研發團隊,我們非常高興的向大家介紹IE9中擁有的硬件加速特性。硬件加速功能的推出必定會進一步促進網站性能的提高和標准網頁標識的發展。研發者可以在新網頁標識的基礎上開發出更多網頁應用程序類,並最終使得用戶使用瀏覽器時網頁的響應速度不斷得到提高。在這篇文章中,我們以IE9瀏覽器運行飛行圖像樣本為例,近距離向大家解釋硬件加速功能所賦予IE9的特殊性能。
當用戶使用不同的網頁瀏覽器運行『飛行圖片』時,你會發現IE9可以迅速處理數百張飛行圖片,而包括IE8在內的其他瀏覽器處理『飛行圖片』的速度會相對較慢。
我們認為,不同瀏覽器對飛行圖片的處理過程是最可以彰顯IE9利用硬件加速特性的優勢所在。飛行圖片是利用標准HTML、CSS層疊樣式表、Java腳本等標准標識碼創建的動畫圖片。有興趣的用戶可以在網絡上找到飛行圖片後臺運行的源代碼,其中最容易找到的應當是Java腳本源代碼。在飛行圖片後臺運行Java腳本源代碼中我們可以看到,該程序將動畫框架實時相應幀率設置為每秒60幀的速度。
為使IE9擁有利用硬件加速特性,我們對IE9的內核進行了重新設計。主要增加的功能有三點:1. IE9中的『顯示渲染子系統』可以利用顯卡中的圖形處理器來處理網頁上的所有圖像和文字。其工作原理是IE9將原本由中央處理器(CPU)完成的圖像處理任務轉交給專門負責處理圖像的硬件圖像處理器(GPU)來完成。2. IE9可以利用Java腳本引擎更加有效的利用當前流行的多核處理器,在後臺將Java腳本程序代碼轉換成可以和硬件直接交流的匯編語言。3.相對於其他瀏覽器,IE9更加充分的利用了當前主流處理器的指令集。綜合這三點優勢後,用戶使用IE9時計算速度會更快,同時可以節省中央處理器(CPU)資源去執行其他多線程程序。
用戶可以使用『任務管理器』或其他檢測工具來測試使用IE9時計算機的中央處理器(CPU)和圖形處理器(GPU)的活性動態。在這裡,我們建議用戶使用『Windows性能工具(Performance Tools)』進行檢測。『Windows性能工具』可以更好的為用戶展現Windows操作系統的資源利用狀態的同時,可以過濾程序層級的活性動態,這樣可以使用戶更真實的了解到CPU和GPU的活性動態。下面我們將以實際例子為大家介紹一下IE9硬件加速功能的優良特性:
現在有一臺已經使用兩年的戴爾電腦。其具體配置為:主頻為3.0 GHz的雙核奔騰處理器、4 GB的物理內存、NVIDIA GeForce 8600 GT獨立顯卡、100GB7200轉的硬盤、Windows 7的操作系統。我們將使用不同的瀏覽器來進行飛行圖片運行操作,檢測在操作過程中的中央處理器(CPU)及圖形處理器(GPU)的活性動態。
下面幾幅圖片展示的是在不同瀏覽器中運行飛行圖片操作1.5秒後,圖片已經完全下載成功並開始動畫顯示過程時,CPU和GPU的利用狀況,及視覺更新(Visual Update)所顯示的幀數。
1. 在使用IE8運行飛行圖片時CPU及GPU的活性動態
從上面的圖片中我們可以看出, 在使用IE8運行飛行圖片操作時,雙核處理器中的一個中央處理器資源幾乎被全部佔用。其主要原因在於盡管一些網頁瀏覽器(包括IE8在內)支持多線程操作,但飛行圖片自身的模式為單線程操作,所以運行飛行圖片時,無法實現雙核處理器並行運行。即便如此,IE8僅可以將圖片移動速度最快保持在0.221秒/幀的速度上。這也就是說,每秒的幀數僅為4.5幀。同時,我們可以看到的是GPU資源在整個過程中完全被空置。
2. 在使用谷歌Chrome4.1瀏覽器運行飛行圖片時CPU及GPU的活性動態
從圖片中我們可以看出,在Chrome4.1瀏覽器上運行飛行圖片時,CPU及GPU的利用狀況和IE8相似。在Chrome4.1瀏覽器上圖片移動速度更慢,為0.238秒/幀,也就是說每秒的幀數僅為4.2幀。盡管在通用行業標准下,Chrome4.1瀏覽器的Java腳本引擎要優於IE8。但運行飛行圖片操作檢測的是瀏覽器的整體性能,而不僅僅是利用Java腳本引擎。這個過程要調用瀏覽器的不同子系統:調用Java腳本引擎來計算圖片的新位置;調用CSS層疊樣式表為圖片定位;調用顯示系統來展示圖片等等。