白送1000元?麗臺(tái)公版GTX580全面解析
提起GPU通用計(jì)算,自然會(huì)讓人想到NVIDIA的CUDA、ATI的Stream以及開放式的OpenCL標(biāo)準(zhǔn),再加上微軟推出的DirectCompute,四種技術(shù)標(biāo)準(zhǔn)令人眼花繚亂,他們之間的競(jìng)爭(zhēng)與從屬關(guān)系也比較模糊。
首先我們來明確一下概念:
1. OpenCL類似于OpenGL,是由整個(gè)業(yè)界共同制定的開放式標(biāo)準(zhǔn),能夠?qū)τ布讓又苯舆M(jìn)行操作,相對(duì)來說比較靈活,也很強(qiáng)大,但開發(fā)難度較高;
2. DirectCompute類似于DirectX,是由微軟主導(dǎo)的通用計(jì)算API,與Windows集成并偏向于消費(fèi)領(lǐng)域,在易用性和兼容性方面做得更出色一些;
3. CUDA和Stream更像是圖形架構(gòu)或并行計(jì)算架構(gòu),NVIDIA和ATI對(duì)自己的GPU架構(gòu)自然最了解,因此會(huì)提供相應(yīng)的驅(qū)動(dòng)、開發(fā)包甚至是現(xiàn)成的應(yīng)用程序,通過半開放的形式授權(quán)給程序員使用。
其中ATI最先提出GPGPU的概念,Folding@Home和AVIVO是當(dāng)年的代表作,但在被AMD收購后GPGPU理念擱淺;此后NVIDIA后來者居上,首次將CUDA平臺(tái)推向市場(chǎng),在這方面投入了很大的精力,四處尋求合作伙伴的支持,并希望CUDA能夠成為通用計(jì)算的標(biāo)準(zhǔn)開發(fā)平臺(tái)。
NVIDIA CUDA架構(gòu)示意圖
在NVIDIA大力推廣CUDA之初,由于OpenCL和DirectCompute標(biāo)準(zhǔn)尚未定型,NVIDIA不得不自己開發(fā)一套SDK來為程序員服務(wù),這套基于C語言的開發(fā)平臺(tái)為半開放式標(biāo)準(zhǔn)(類似與Java的授權(quán)形式),只能用于NVIDIA自家GPU。AMD始終認(rèn)為CUDA是封閉式標(biāo)準(zhǔn),不會(huì)有多少前途,AMD自家的Stream平臺(tái)雖然是完全開放的,但由于資源有限,對(duì)程序員幫助不大,因此未能得到大量使用。
ATI Stream示意圖
DX11時(shí)代我們迎來了微軟的DirectCompute 11和OpenCL這兩大GPU計(jì)算API,其定位就相當(dāng)于3D圖形領(lǐng)域的DirectX和OpenGL。就如同GPU能同時(shí)支持DirectX與OpenGL那樣,NVIDIA和AMD對(duì)DirectCompute和OpenCL都提供了無差別支持。
我們希望新API的出現(xiàn)能夠打破目前GPU計(jì)算領(lǐng)域混亂的格局,并帶來更多實(shí)用的應(yīng)用和軟件,但從目前的發(fā)展方向來看,進(jìn)展還是相當(dāng)緩慢。當(dāng)前主流的一些GPU計(jì)算類軟件,主要還是集中在視頻轉(zhuǎn)碼和編輯方面,都是以NVIDIA和AMD的CUDA/Stream技術(shù)為主。
就拿視頻轉(zhuǎn)碼來說,ATI驅(qū)動(dòng)集成的AVIVO轉(zhuǎn)碼器功能太過簡(jiǎn)單,轉(zhuǎn)換后視頻的畫質(zhì)很差,而且主要依靠CPU轉(zhuǎn)碼,跟GPU的關(guān)系不大。而NVIDIA的Badaboom完全依靠GPU轉(zhuǎn)碼,GTX480的性能都能完全釋放出來,MediaCoder更是能夠充分發(fā)揮出CPU和GPU的效能,成為目前轉(zhuǎn)碼速度最快的軟件;MediaShow能同時(shí)支持A卡和N卡,主要依靠CPU轉(zhuǎn)碼,對(duì)GPU的要求很低,雙方性能差距并不明顯。
而在視頻編輯和應(yīng)用方面,目前視頻倍線軟件和2D轉(zhuǎn)3D的軟件能夠同時(shí)支持CUDA和Stream技術(shù),但一般都是等支持CUDA大半年之后,才加入對(duì)Stream的支持。此外還有一些加密解密、視頻修復(fù)軟件只支持CUDA不支持Stream,很顯然AMD對(duì)于GPU計(jì)算方面投入的精力還不夠多,支持Stream的軟件無論數(shù)量還是質(zhì)量都跟CUDA相差一大截。
關(guān)注我們



