截至目前為止,網絡上的視頻絕大部分都是以Flash的方式在瀏覽器上展現出來的,包括Youtube、Youku等都採用的是這樣的方式。可以說,Flash目前就是最流行的網絡視頻輸出方式,也可以說是一種格式。Flash是Adobe公司傾心打造的一款產品,如果要論市場佔有率的話,恐怕Flash在Adobe公司的所有產品中市場佔有率是最高的。目前基 於Web的Flash Player的最新版本是Flash 10.0,該版本有一個特別重要的更新點就是加入了GPU(圖形處理器)加速的支持,也就是所謂的硬件加速。該功能在Flash 10.0中默認呈開啟狀態,在網頁的Flash中點擊右鍵——設置就可以看到這一點。
使用硬件加速有什麼好處呢?大家知道,CPU雖然發展的很快,但處理能力是有限的,特別是對視頻的處理能力,顯然不如GPU強大。而且,從計算能力 方面,GPU所採用的精簡指令集架構執行效率也遠遠要比x86 CPU所採用的複雜指令集1效率要高的多。使用GPU來處理Flash,不僅僅可以有效的提升性能,而且可以大幅度降低CPU的資源佔用率,節省對CPU 資源的開支以讓CPU可以做更多其他的事情。
但是,在Flash 10.0中,Flash的處理並不是完全依靠GPU,甚至很大一部分處理仍然是依靠CPU來完成的(如上圖)。我們可以看到,Web Flash的處理過程主要分為三個部分:目標視頻處理——合成處理——屏幕渲染。在Flash 10.0中,目標視頻處理與合成處理這兩大部分仍然依靠CPU來完成,GPU只是完成了最後一個步驟——屏幕渲染。顯然,這還是很大程度上依賴 CPU,GPU的性能並沒有得到完全的利用。
雖然以目前CPU的強大性能處理網頁上的Flash不在話下,但是一些性能比較低的CPU在多開幾個播放中的Flash窗口之後,就會出現CPU滿 負載,視頻停頓的現象(網絡環境暢通的情況下)。同時,面對高清版網絡視頻逐漸流行,例如全球最大的視頻網站Youtube加入了高清版視頻在線播 放,CPU處理起來就會漸漸感到力不從心,所以最好的辦法就是將這一切都交給GPU來處理。可喜的是,Adobe在下一個版本的Flash也就是 Flash 10.1中就會完全支持GPU,,GPU將完全替代CPU的角色,全程負責Flash的處理以及渲染(如上圖)。
目前,Adobe已經與全球視覺計算的領袖NVIDIA展開了合作,共同開發下一代Flash。根據調查,在線視頻已經成為互聯網的第三大應用,超 過了電子郵件的使用頻率(互聯網誕生初期電子郵件是最多的應用)。我們可以看到,隨著GPU對Flash的全程支持以及高速網絡的逐漸普及,直接在瀏覽器 中流暢的播放高清視頻將不再是夢想!
注1:從Intel Pentium Pro(P6)之後,x86複雜指令集的CPU也開始採用內核精簡指令集,但是在外圍佈置了從複雜指令集到精簡指令集的譯碼電路動態譯碼方式,籍此提高CPU的性能,使複雜指令集CPU也有可能在1個時鐘週期內運行一條甚至多條指令。
本日誌由 Admin 於 2009-09-30 07:01:29 發表到 有的沒有的 中,目前已經被瀏覽 1369 次,評論 0 次;
作者添加了以下標籤: GPU加速,Flash 10.1;
Powered by Bitrac, Designed by Loveyuki, Icon by Led Icon Set.