2009年4月30日 星期四

FireStream 業界新訊--繪圖晶片新風潮

繪圖晶片可加速Apple Leopard與Microsoft Windows 7
使用繪圖晶片,將可加快蘋果及微軟下一代作業系統的執行速度。新的程式設計環境將善加利用繪圖處理器潛在的運算效能,讓那些在蘋果OS X Snow Leopard及微軟Windows 7平台上執行的軟體跑得更快。  

繪圖晶片將不再只是專業繪圖或是遊戲使用,通用繪圖處理器(General-Purpose Graphics Processing Units;GPGPU)已蔚為風潮。現在盛行的作法是,運用GPU裡內含的數十個(高階晶片裡甚至有數百個)處理核心,來加速處理任務。這些任務若交給中央處理器(CPU)來做,其執行效率可能比較差。  這正是開放運算語言(Open Computing Language;OpenCL)切入之處。OpenCL是一種支援異質運算(heterogeneous computing)的程式設計環境。所謂異質運算,意指混用多核心的CPU與繪圖處理器(GPU)。微軟的同質(analogous)程式設計環境是 DirectX。  

蘋果公司網站這麼描述OpenCL:「Snow Leopard的另一項強大的技術是OpenCL...讓開發者能有效率地利用目前閉鎖在繪圖處理器內的運算效能。」  

今天不論是在PC或Mac上,英特爾和超微(AMD)製的CPU都能處理一般的作業系統任務,例如在使用者點擊桌面圖示以開啟應用程式時,處理一連串的任務。但未來,一部分傳統上由CPU包辦的任務,都將轉交給GPU處理,形成部分運作在CPU上執行、部分運作由GPU代勞的局面。  OpenCL和DirectX有趣的一點是,OpenCL將成為蘋果作業系統(Snow Leopard)的一部分,以及Windows 7的一部分。基本上,這對消費者的意義是,如果你的筆記型電腦內建Nvidia GPU或ATI (AMD) GPU,作業系統就會跑得比較快,因為作業系統基本上是用兩個處理器來執行。作業系統把GPU同時當作繪圖晶片與運算引擎,這是歷來首見。  

像是Google的Picasa完全靠CPU執行,但若選取圖片並使用過濾器(filter),那麼 filter就會在GPU上執行。不過,CPU還是不可或缺的。CPU是十八般武藝樣樣通,尤其擅長處理無可預知的任務;GPU則是精通一種任務,尤其是高度平行(highly parallel)的任務。  

釋出GPU潛在運算效能的一大阻礙,是程式設計環境。使用GPU最難的地方,在於必須使用圖形語言來作程式設計。但有了OpenCL讓這種情況改觀。

沒有留言:

張貼留言