GPU挑戰CPU地位!詳解CUDA+OpenCL威力
任何硬件想要盡情地發揮性能離不開軟件的支持,GPU光有優秀的架構還是遠遠不夠的,如果沒有驅動和軟件的支持那就是一紙空談。所以,NVIDIA在G80核心發布之后,一直都在想方設法地釋放這種架構的能量。
● GPU在開發平臺方面的進步
于是,CUDA的概念誕生了,CUDA是Compute Unified Device Architecture的簡寫,中文含義是統一計算設備架構,它是建立在NVIDIA GeForce 8架構基礎上,并在GeForce 9和GTX200架構上改進優化并發揚光大。

CUDA是NVIDIA推出的一個并行計算架構。這個架構包含有一個ISA(指令集架構)以及并行計算的硬件引擎。就如同CPU的情況一樣,X86的架構也包含ISA和執行指令的硬件架構。各種應用程序都基于這個架構進行開發并在此上運行。可以說CUDA架構的GPU是圖形渲染架構與并行計算架構的合體!

NVIDIA提供的CUDA開發包中的C語言編譯器版本更新很快
CUDA本意就是一種架構,但很多人認為CUDA是一種語言、或者是開發平臺,這可能跟NVIDIA最初的宣傳、推廣策略有關系。在CUDA架構誕生之初(GeForce 8時代),尚不存在專門針對GPU并行計算的開發平臺以及編程語言,因此NVIDIA必須給程序員提供一種簡單、易上手、并且完整的軟件開發解決方案,這樣NVIDIA所發布的CUDA包當中就包括了針對GPU的C語言編譯器、糾錯器/制模器、專用驅動和標準函數庫等。

除了支持自家C語言編譯器之外,更多的語言及API都能運行在CUDA架構上
現在,越來越多的廠商和開發者意識到了GPU計算的重要性,于是各種開發語言及應用程序編程接口應運而生了,其中除了CUDA編譯器所提供的C語言之外,大家所熟知的Fortran、C++也會支持高性能GPU并行計算,另外近期發布的OpenCL及未來的DX11也會專門針對GPU開發相應的API。在整個產業的共同推動下,GPU計算可謂是前途無量!
不難看出,正是對于GPU通用計算敏銳的嗅覺以及前瞻性,讓NVIDIA站在了業界的前沿,并且加速了整個行業的發展。
關注我們


