撥亂反正:Windows7真不支持CUDA嗎?
CUDA本意就是一種架構,但很多人認為CUDA是一種語言、或者是開發(fā)平臺,這可能跟NVIDIA最初的宣傳、推廣策略有關系。在CUDA架構誕生之初(GeForce 8時代),尚不存在專門針對GPU并行計算的開發(fā)平臺以及編程語言,因此NVIDIA必須給程序員提供一種簡單、易上手、并且完整的軟件開發(fā)解決方案,這樣NVIDIA所發(fā)布的CUDA包當中就包括了針對GPU的C語言編譯器、糾錯器/制模器、專用驅動和標準函數(shù)庫等。
除了支持自家C語言編譯器之外,更多的語言及API都能運行在CUDA架構
上圖就很好的反映出了CUDA與應用程序接口(API)以及各種語言編譯器的關系,其中的DX11計算也就是Direct Compute,可以看出CUDA架構和Direct Compute并無沖突。包括CUDA自家編譯器所采用的C語言擴展、OpenCL應用程序接口、Fortran甚至C++等都可以運行在CUDA架構之上,未來CUDA還將支持更多的語言。在整個產(chǎn)業(yè)的共同推動下,GPU計算可謂是前途無量!
實際上,在微軟的一份Direct Compute宣傳PPT中,我們也可以看到Direct Compute是完全建立在符合統(tǒng)一渲染架構GPU的基礎之上的。實際上,從DirectX 10開始,NVIDIA和AMD紛紛淡化管線和頂點的概念,就是為了使得流處理器可以執(zhí)行更多非3D的應用,而如今微軟推出的Direct Compute,無疑對GPU通用計算應用有很大的推動性。
小貼士:DirectX Compute還是Direct Compute?
很多朋友應該會發(fā)現(xiàn),早期我們將微軟的DirectX 11中包含的GPU通用計算成為DirectX Compute,但近期我們又改成了Direct Compute,這是為什么呢?實際上,微軟為了將GPU通用計算和主要是3D應用的DirectX區(qū)別開,所以通知了所有合作伙伴以及媒體,將DirectX Compute改為Direct Compute,微軟想要達到的效果應該是讓Direct Compute和DirectX一樣重要吧,其實也可以看出微軟對GPU計算的重視。
關注我們
