大規(guī)模并行計(jì)算一定會(huì)成為趨勢(shì)
但是,隨著制造工藝技術(shù)的制約以及CPU架構(gòu)本身設(shè)計(jì)目標(biāo)的局限,這種時(shí)鐘頻率的提升很快就碰到了壁壘。從2001年至2003年,Pentium 4處理器的時(shí)鐘頻率從最初的1.5GHz提升到了3GHz。然而從2003年到2005年,整整2年的時(shí)間里,處理器的時(shí)鐘頻率提升的速度驟然放緩,只是從3GHz增加到3.8GHz。處理器的速度增長(zhǎng)宛若已經(jīng)到了強(qiáng)弩之末。
盡管如此,Intel等處理器廠商仍然不肯放棄。他們充分的優(yōu)化了處理器的架構(gòu),使之可以運(yùn)行在更高的頻率上,Prescott核心就是這種造神運(yùn)動(dòng)的產(chǎn)物。不過Intel所面對(duì)的問題已不僅僅是工業(yè)制造技術(shù)的問題,而是最簡(jiǎn)單最基本的物理定律的壁壘,關(guān)于摩爾定律從此失效的言論也甚囂塵上。
GPU計(jì)算能力的使用,以及GPU在通用計(jì)算領(lǐng)域表現(xiàn)出來的能力,注定會(huì)成為芯片計(jì)算歷史的拐點(diǎn),通用GPU仿佛成了天將降大任的角色。在GPGPU一路高歌猛進(jìn)的過程作,NVIDIA公司憑借其cuda架構(gòu),站到了這個(gè)歷史舞臺(tái)上。
Cuda能否改變企業(yè)計(jì)算的格局?CUDA程序究竟如何編寫?CUDA架構(gòu)是怎樣的?……帶著對(duì)cuda架構(gòu)的種種疑問,IT168技術(shù)開發(fā)頻道記者專訪了NVIDIA公司亞太區(qū)技術(shù)市場(chǎng)經(jīng)理鄧培智先生。
Cuda的最終目的是簡(jiǎn)化GPU計(jì)算的編程
CUDA的根本目的就是簡(jiǎn)化GPU計(jì)算的編程,使得人們更為快捷地開發(fā)基于GPU計(jì)算的應(yīng)用。 鄧培智談到,歷史上來看,GPU從計(jì)算角度來說,性能提升比CPU性能提升快很多。GPU計(jì)算能力這么強(qiáng),除了做圖形處理之外,很多人還打算利用GPU強(qiáng)有力的計(jì)算能力進(jìn)行其他應(yīng)用,就是通用計(jì)算。盡管傳統(tǒng)意義上的通用用途的GPU(GPGPU)能夠參與通用計(jì)算和處理,但使用GPU計(jì)算很麻煩,過去的GPU完全是為圖形進(jìn)行設(shè)計(jì)的,它是一個(gè)非常專用的處理器,你要使用GPU 來做計(jì)算的話,你需要透過圖形API進(jìn)行,通過這種圖形的API來訪問GPU計(jì)算核心,你必須要把你的計(jì)算所需要的數(shù)據(jù),通過API假設(shè)這種計(jì)算是3D的計(jì)算,然后你要走過一遍圖形處理過程,才能得到計(jì)算結(jié)果。第一,編程非常復(fù)雜,第二,效率也不會(huì)達(dá)到很高。因?yàn)橹虚g必須要走過渲染的過程。
“但是對(duì)于真正需要并行計(jì)算的人,比如說科學(xué)家,不可能讓他們?cè)賹W(xué)習(xí)圖形編程的技術(shù),普通開發(fā)者大部分也沒有圖形編程的經(jīng)驗(yàn)。在這種情況下,NVIDIA認(rèn)為可以把并行計(jì)算和圖形結(jié)合起來,所以就催生和開發(fā)了CUDA。”
據(jù)了解,CUDA的項(xiàng)目和NVIDIA的GeForce 8系列架構(gòu)的開發(fā)時(shí)間差不多。NVIDIA GeForce8系列是花了4年多時(shí)間開發(fā),CUDA也是那個(gè)時(shí)候開發(fā)的。NVIDIA GeForce 8 GPU開發(fā)的時(shí)候就考慮到了圖形和并行計(jì)算兩方面的需求。所以NVIDIA GeForce 8800系列發(fā)布的時(shí)候就宣布了CUDA,這是一種全新的GPU計(jì)算開發(fā)環(huán)境。
CUDA對(duì)于行業(yè)的價(jià)值
低成本地?fù)碛懈咝阅芊?wù)器
鄧培智談?wù)J為,cuda相對(duì)于傳統(tǒng)的服務(wù)器集群以及超級(jí)計(jì)算機(jī)在性價(jià)比、占地空間、功耗等方面的優(yōu)勢(shì)非常明顯。CUDA對(duì)于行業(yè)的價(jià)值,通過CUDA和支持CUDA GPU,兩者結(jié)合在一起,所有的廠商很容易利用GPU強(qiáng)大的計(jì)算能力做各種各樣的并行計(jì)算工作,這就是最大的價(jià)值。這一切使得每個(gè)人都可以低成本的擁有自己的桌面超級(jí)計(jì)算機(jī)成為可能,而不是大家來共享一臺(tái)大型的超級(jí)計(jì)算機(jī)。正如NVIDIA Tesla GPU 計(jì)算事業(yè)部高級(jí)產(chǎn)品經(jīng)理Sumit Gupta所言,這不是簡(jiǎn)單的芯片的性能提升,而是帶來了一種全新的、具有革命性的計(jì)算模式。
如何理解CUDA軟硬件架構(gòu)
鄧培智: CUDA是專門針對(duì)GPU來進(jìn)行編程的平臺(tái),它最大的特點(diǎn)是,CUDA如果在GPU計(jì)算方面來說,是所謂的異構(gòu)計(jì)算系統(tǒng)。它和CPU有很大的不同。CPU我們只是針對(duì)一個(gè)處理器編程,CUDA是針對(duì)GPU計(jì)算得的,但是它包含GPU和CPU兩部分的代碼。順序計(jì)算和一些數(shù)據(jù)的管理等等代碼在CPU上運(yùn)行,而核心的并行計(jì)算部分在GPU上運(yùn)行。在編輯的時(shí)候編譯器會(huì)把CPU代碼和GPU代碼分開,GPU代碼會(huì)被編譯成成GPU的目標(biāo)代碼,CPU代碼還是需要其他的C語言編譯系統(tǒng)來編譯(最新的CUDA版本也支持多核CPU)。這可能是最大的不同。CUDA一定是需要CPU來參與的,我們叫異構(gòu)計(jì)算環(huán)節(jié)。所謂異構(gòu)計(jì)算,就是CPU和GPU兩個(gè)架構(gòu)和指令集都是不一樣的,但是他們共同協(xié)同動(dòng)作來解決同一個(gè)問題。 至于說CUDA和DirectX/OpenGL這些3D API的關(guān)系,對(duì)于CUDA來說,是不需要3D API的,但是CUDA可以很容易和3D API配合使用。 #p#page_title#e#
Cuda軟件架構(gòu)圖
鄧培智針對(duì)這個(gè)CUDA的軟件架構(gòu)圖進(jìn)行了講解, CUDA提供了兩種不同類型的API接口:一種是高級(jí)的API:CUDA運(yùn)行的API,另一種是低級(jí)API:CUDA的驅(qū)動(dòng)API。
高級(jí)的API是在低級(jí)API之上所執(zhí)行的,每一個(gè)調(diào)用的函數(shù)在運(yùn)行的時(shí)候都可以被驅(qū)動(dòng)API細(xì)分為若干個(gè)基本的指令。
驅(qū)動(dòng)API結(jié)合了更多的管理功能,它會(huì)請(qǐng)求GPU做很多處理工作。但它的好處是更加的靈活,它可以給程序員更多額外的控制。無論如何,這兩種API都可以溝通OpenGL和Direct3D的資源。
CUDA的軟件層,目前CUDA的2.0版提供了兩個(gè)標(biāo)準(zhǔn)的數(shù)學(xué)運(yùn)算庫(kù)——CUFFT(離散快速傅立葉變換)和CUBLAS(離散基本線性計(jì)算)的實(shí)現(xiàn)。這兩個(gè)數(shù)學(xué)運(yùn)算庫(kù)所解決的是典型的大規(guī)模的并行計(jì)算問題,也是在密集數(shù)據(jù)計(jì)算中非常常見的計(jì)算類型。開發(fā)人員在開發(fā)庫(kù)的基礎(chǔ)上可以快速、方便的建立起自己的計(jì)算應(yīng)用。此外,開發(fā)人員也可以在CUDA的技術(shù)基礎(chǔ)上實(shí)現(xiàn)出更多的開發(fā)庫(kù)。
CUBLAS是一套函數(shù)庫(kù),它是基于模塊化的運(yùn)行在GPU上的線性計(jì)算函數(shù)庫(kù)。它支持NVIDIA的GPU的計(jì)算資源。該庫(kù)在API層次上是能夠“自給自足”,即不必與CUDA直接交互。應(yīng)用程序使用CUBLAS庫(kù)的基本模型是在GPU內(nèi)存空間中創(chuàng)建矩陣和矢量對(duì)象,使用數(shù)據(jù)填充它們,調(diào)用一定順序的CUBLAS函數(shù),最后把結(jié)果從GPU內(nèi)存上載到主機(jī)。要實(shí)現(xiàn)這個(gè)過程,CUBLAS提供了一些幫助函數(shù),用于在GPU空間中創(chuàng)建和銷毀對(duì)象,以及對(duì)這些對(duì)象寫入和讀出數(shù)據(jù)。
對(duì)于CUDA內(nèi)部的線程管理原理,鄧培智也進(jìn)行了相應(yīng)的介紹。GPU線程是非常輕量的,也就是說的創(chuàng)建和線程的切換,基本不需要系統(tǒng)開銷,線程的創(chuàng)建、撤銷和切換幾乎是立刻的。這個(gè)和我們硬件設(shè)計(jì)是分不開的。 CPU的程序多線程的創(chuàng)建和注銷有很多代碼。這個(gè)和CPU程序的線程不太一樣。比如即使是四核CPU,如果跑非常多線程的話,線程的管理就會(huì)成為嚴(yán)重的負(fù)擔(dān)。GPU計(jì)算的話里面怕你線程不夠多,你需要上千個(gè)甚至上萬個(gè)線程才可以把GPU填滿,這是非常大的不同。 所以我們認(rèn)為大規(guī)模的并行計(jì)算特別適用于CUDA的這種架構(gòu)。
在硬件方面,包含cuda架構(gòu)的顯卡已經(jīng)有多款產(chǎn)品,傳統(tǒng)的OEM廠商會(huì)將Tesla產(chǎn)品整合在他們提供的解決方案中,除此以外,NVIDIA也有自己專門的CUDA計(jì)算平臺(tái)解決方案,如Telsa S1070 1U機(jī)架服務(wù)器,共有4個(gè)GPU卡,共960個(gè)內(nèi)核,性能達(dá)到4萬億次每秒,功耗只有700瓦,而如果要達(dá)到相同計(jì)算性能,需要一個(gè)小服務(wù)器集群才能實(shí)現(xiàn),而功耗可能達(dá)到幾萬瓦;另一款產(chǎn)品是Telsa C1060,可以用到普通的PC和工作站中,性能是957Gflops,功耗只有160瓦。
目前,適合于并行計(jì)算的應(yīng)用已經(jīng)越來越多。據(jù)鄧培智介紹,很多在CPU上面做的應(yīng)用,比如說視頻編碼,它的效率非常低。比如說H.264的視頻編碼,把代碼轉(zhuǎn)移到CUDA上面以后,它的性能比在CPU上快十幾倍,這是非常典型的應(yīng)用。還有很多這方面的應(yīng)用,都可以使用CUDA對(duì)它進(jìn)行加速。這樣對(duì)于普通用戶來說,他也可以從CUDA里面得到好處。H264編碼強(qiáng)度很高,一是它的編碼效率很高,你相同的碼率,它可以獲得更好的品質(zhì)。二是它需要更多的計(jì)算,在這個(gè)情況下,過去要用CPU實(shí)現(xiàn)實(shí)時(shí)H264的編碼是很難的,現(xiàn)在使用CUDA可以加快編碼的過程。像IPOD支持H264的格式,你要把一張DVD轉(zhuǎn)換為這個(gè)格式,用CPU來做,需要很多小時(shí),用CUDA來做,半個(gè)小時(shí)時(shí)間就可以把DVD轉(zhuǎn)換完。 另外還有一個(gè)就是物理加速,我們使用CUDA,GPU通過PhysX物理引擎對(duì)物理效果加速,你除了可以看見比較逼真場(chǎng)景以外,你可以讓場(chǎng)景真正逼真地動(dòng)起來,戰(zhàn)爭(zhēng)中爆炸的場(chǎng)面,人物的衣服動(dòng)起來非常逼真,現(xiàn)在這個(gè)叫動(dòng)態(tài)逼真,以前叫靜態(tài)逼真。所謂靜態(tài)逼真就是你游戲中截圖都很逼真,但是動(dòng)起來就不太像了,顯得比較假。有了物理加速引擎就可以獲得動(dòng)態(tài)逼真,很多東西動(dòng)起來都很像,包括水流、煙霧等等,這個(gè)需要物理的加速。物理的加速如果僅僅靠CPU來做,是非常難的,使用GPU你可以做大規(guī)模的物理的模擬,在游戲里面讓游戲變得非常栩栩如生。 我們馬上會(huì)推出很多支持物理加速的游戲,現(xiàn)在有的游戲已經(jīng)直接用了,我們會(huì)有更多的游戲推出來。讓大家感受到這種不一樣的效果。 當(dāng)然還有其他的應(yīng)用,包括圖象方面的應(yīng)用,還有視頻方面的應(yīng)用,還在繼續(xù)開發(fā),我們希望不久以后有很多GPU計(jì)算方面的應(yīng)用不斷的開發(fā)出來。 #p#page_title#e#
另外的可能的應(yīng)用還有類似像病毒文件的掃描,因?yàn)檫@個(gè)也是非常典型的、非常大的數(shù)據(jù)量,需要很大的處理能力,金融里面也有很多的處理,包括數(shù)據(jù)庫(kù)的搜索和數(shù)據(jù)分析,很多在CUDA上面都可以獲得很好的加速效果。
對(duì)于許多企業(yè)計(jì)算領(lǐng)域,GPU計(jì)算甚至超過了傳統(tǒng)的計(jì)算機(jī),讓許多原來無法解決的問題現(xiàn)在可以通過GPU計(jì)算機(jī)來輕松實(shí)現(xiàn)。比如,針對(duì)新型流行性疾病如非典禽流感等,人們總是希望新藥物研制的時(shí)間越短越好;在天氣預(yù)報(bào)方面,人們希望預(yù)報(bào)的精度和準(zhǔn)確度越高越好;在金融股票價(jià)格分析方面,人們?cè)跊Q定買賣股票時(shí)總是希望越快越好。GPU計(jì)算的出現(xiàn),使得超級(jí)計(jì)算機(jī)在挑戰(zhàn)這些領(lǐng)域極限方面又進(jìn)了一步。比如,美國(guó)國(guó)家癌癥研究所通過GPU計(jì)算將模擬速度提升了12倍,等待結(jié)果的時(shí)間從原來的2個(gè)小時(shí)縮短到了10分鐘;美國(guó)國(guó)家大氣研究中心的氣象研究和預(yù)報(bào)模型(WRF)盡管僅僅將1%通過CUDA來實(shí)現(xiàn),但其總體速度卻提升了20%,節(jié)省了一個(gè)星期的分析時(shí)間;在評(píng)估整個(gè)美國(guó)期權(quán)市場(chǎng)時(shí),Hanweck原來計(jì)劃用價(jià)值26.2萬美元的600 CPU集群來處理,而實(shí)際采用三臺(tái)nvidia Telsa S870后,機(jī)架空間節(jié)省了9倍,硬件成本節(jié)省了6倍。這就是GPU加速帶來的魅力!
CUDA編程并不難,難在并行計(jì)算本身
很多人認(rèn)為,學(xué)習(xí)CUDA編程很難,其實(shí)并不是這樣,鄧培智談到。一個(gè)C語言編程者幾乎2天就能學(xué)會(huì)簡(jiǎn)單的CUDA編程的基本語法和方法,難度還在并行計(jì)算本身。比如,我們?cè)撊绾闻袛?,哪些?yīng)用是可以并行化的,該如何切分任務(wù)等等這些并行計(jì)算本身的問題。
其實(shí)CUDA的語法很簡(jiǎn)單,實(shí)際上就是一個(gè)標(biāo)準(zhǔn)的C語言的擴(kuò)展,必須有擴(kuò)展來支持GPU的運(yùn)行代碼,必須有一些新的函數(shù)等東西。但是如果一個(gè)程序員會(huì)C語言,會(huì)很容易用CUDA編出第一個(gè)程序,但是難就難在解決工作中的問題,用CUDA迅速的解決。這個(gè)問題不是在于CUDA本身,而是你要把這個(gè)問題并行化進(jìn)行高效處理得問題,可以說這個(gè)是并行計(jì)算的普遍性的問題。如果要使用別的并行計(jì)算方式,這些問題也同樣存在的。 從語言本身來說,CUDA沒有什么特別難的地方。如果你對(duì)你所開發(fā)的東西,如果有很深的了解,要轉(zhuǎn)換起來很快,就像PhysX,它原來是是AGEIA開發(fā)的一個(gè)物理引擎,我們收購(gòu)它以后,工程師一個(gè)月內(nèi)就可以把軟件移植到CUDA新的平臺(tái)上運(yùn)行起來了,PhysX是個(gè)相當(dāng)復(fù)雜的程序,從這個(gè)指令轉(zhuǎn)換到一個(gè)完全不同的架構(gòu)上,這是需要很大的工作量。這個(gè)例子說明什么呢?說明只要你對(duì)你的工作有足夠的了解,就可以很快的移植到CUDA架構(gòu)上面來,CUDA還是很容易學(xué)習(xí)的。
鄧培智,“我希望開發(fā)者對(duì)CUDA的算法進(jìn)一步的了解,看能不能把我的計(jì)算并行化。這些確實(shí)需要技巧,我相信在某些情況下這不是非常容易的事情,需要開發(fā)者去判斷。但有些地方是很容易看,比如說帶有連續(xù)的邏輯性,一步一步來,這個(gè)很難進(jìn)行大規(guī)模的并行化。但是有些地方很容易并行化,因?yàn)樾枰芏鄶?shù)據(jù)可以并行來處理,也沒有太多的數(shù)據(jù)相關(guān)情況。但是很多的情況都是有一定難度,這個(gè)需要開發(fā)者掌握一些技巧。CUDA入門很容易,但是進(jìn)去對(duì)各種問題進(jìn)行高效率求解,就需要有很多技巧。 這方面我了解到的國(guó)內(nèi)的情況來看,對(duì)并行編程特別熟悉,或者特別有經(jīng)驗(yàn)的開發(fā)者總的數(shù)量不見得是特別多。當(dāng)然這跟國(guó)內(nèi)大部分人的開發(fā)環(huán)境有關(guān)系。這個(gè)和過去大家很多人可能沒有機(jī)會(huì)用到常規(guī)的大規(guī)模并行運(yùn)算的計(jì)算機(jī)(比如說巨型機(jī),它也是幾千的GPU)有關(guān),大多數(shù)人接觸到的是PC機(jī)。在PC機(jī)上開發(fā),是和并行計(jì)算開發(fā)的思維方式完全不一樣的。我覺得這個(gè)需要去培養(yǎng)并行的思維方式,和并行編程的習(xí)慣,如果編程人員對(duì)這方面的了解和經(jīng)驗(yàn)多了,CUDA編程所帶來的回報(bào)是非常大的,這也是真正對(duì)并行編程的人有經(jīng)驗(yàn)的那些用戶往往對(duì)CUDA報(bào)有極大的信心的原因。歸根結(jié)底,很多問題其實(shí)都是并行編程本身的問題,而不是CUDA的問題。” #p#page_title#e#
并行計(jì)算一定會(huì)成為趨勢(shì) CPU和GPU會(huì)長(zhǎng)期共存 多核的優(yōu)勢(shì)值得懷疑
關(guān)于目前流行于業(yè)界的一些爭(zhēng)論和觀點(diǎn),鄧先生也給出了自己的見解。從效率和成本兩方面看,并行計(jì)算一定會(huì)成為趨勢(shì),會(huì)成為下一代應(yīng)用開發(fā)人員的一種思維方式。
鄧培智說,“對(duì)于NVIDIA來說,或者對(duì)于業(yè)界來說,我們看到這種趨勢(shì),大家認(rèn)識(shí)到,在PC的平臺(tái)上,或者在個(gè)人計(jì)算平臺(tái)上,需要有更強(qiáng)的并行計(jì)算能力,需要GPU來承擔(dān)更多的工作,這是一種很明顯的趨勢(shì)。很多公司都已經(jīng)認(rèn)識(shí)到這種趨勢(shì)。比如說蘋果公司,蘋果是所有公司里面最注重個(gè)人體驗(yàn)的一家公司,這個(gè)每個(gè)人都承認(rèn)。他們就認(rèn)為GPU將會(huì)在在個(gè)人體驗(yàn)起到最重要的作用。他們非常重視GPU的計(jì)算資源。GPU的計(jì)算資源非常高,你不充分用起來,確實(shí)是很大的浪費(fèi)。”
關(guān)于CPU和GPU之爭(zhēng)的問題,鄧培智再次強(qiáng)調(diào),這2種計(jì)算模式一定會(huì)長(zhǎng)期存在。這是由他們的設(shè)計(jì)目前和主要任務(wù)所決定的,一方取代另一方,短期內(nèi)都是不大可能的。
鄧培智介紹道,現(xiàn)在的CPU最重要的設(shè)計(jì)原則其實(shí)是要能更快的執(zhí)行各種指令,現(xiàn)在很多程序的結(jié)構(gòu)設(shè)計(jì)非常復(fù)雜,這些指令有非常復(fù)雜的邏輯,分支、條件的轉(zhuǎn)移等很多,你要非常高效的來執(zhí)行,你需要設(shè)立很大的緩存,你還需要在指令執(zhí)行上做很多的工作,比如說需要很大的指令緩沖池,對(duì)指令進(jìn)行分析,需要亂序執(zhí)行,把順序打亂以后,沒有數(shù)據(jù)或者存儲(chǔ)相關(guān)的先執(zhí)行,有相關(guān)的后執(zhí)行等等,這就導(dǎo)致每個(gè)CPU的core很大,其中真正負(fù)責(zé)計(jì)算的占的面積是很小的,大部分晶體管消耗在指令執(zhí)行環(huán)節(jié),計(jì)算方面能力相對(duì)就弱些。要高效運(yùn)行現(xiàn)有的很多程序,這樣的設(shè)計(jì)也是必須的。而GPU的核心就是計(jì)算,運(yùn)行計(jì)算,我們的GPU有很多個(gè)核,128甚至240核,這么高的并行度就是要盡可能做到計(jì)算吞吐量足夠得大,但是GPU的每個(gè)核不可能作得像CPU的核這么復(fù)雜。這兩個(gè)設(shè)計(jì)理念就有很大的區(qū)別。我不相信把這兩個(gè)很快的統(tǒng)一。因?yàn)閺募軜?gòu)設(shè)計(jì)的目標(biāo)來看,就是有很大的矛盾。在現(xiàn)有的工藝條件下你很難一個(gè)架構(gòu)兩邊都做好。
針對(duì)高性能應(yīng)用是選擇多核方式還是GPU并行計(jì)算的方式的問題,鄧培智認(rèn)為目前CPU多核的優(yōu)勢(shì)是值得懷疑的,而GPU帶來的優(yōu)勢(shì)會(huì)立竿見影。
鄧培智:“ 但是從某種意義上來說,你要看你的應(yīng)用是什么?說老實(shí)話,多核從用戶應(yīng)用來講,優(yōu)勢(shì)體現(xiàn)在哪里呢?不管是在游戲,還是在瀏覽,或者做其他方面,四核和雙核比起來,沒有特別明顯的優(yōu)勢(shì)體現(xiàn)出來。比如說你有一個(gè)四核,你可以自己想象一下,哪些應(yīng)用程序真正能夠充分應(yīng)用到四核功能,實(shí)際上是很少的。對(duì)于GPU來說,這個(gè)是不太一樣,GPU除了做圖形處理,還可以做其他方面的處理,真正四核應(yīng)用有優(yōu)勢(shì)的地方,往往也是使用GPU來做更具效率的地方,比如說視頻的編碼,四核比雙核塊,或者是圖形渲染四核相比雙核可以提高很高的性能,雷外還有像物理加速,剛才我說的游戲里面的物理加速,四核比雙核快,但是在所有這些領(lǐng)域里面如果使用GPU的話,會(huì)比四核快很多倍!”
我們都知道,未來的IT領(lǐng)域肯定是并行計(jì)算的天下。無論是硬件、軟件都會(huì)朝著這個(gè)方向發(fā)展,這是業(yè)內(nèi)技術(shù)的大趨勢(shì)。盡管如此, NVIDIA仍有諸多機(jī)遇和挑戰(zhàn)。雖然在技術(shù)方面CUDA有許多先天的優(yōu)勢(shì),但是想要說服系統(tǒng)平臺(tái)開發(fā)商,和習(xí)慣了傳統(tǒng)編程思維習(xí)慣的,崇尚兼容性,穩(wěn)定性為首要素的軟件開發(fā)人員來支持CUDA也不是一件容易的事兒。
在人類計(jì)算歷史的長(zhǎng)河中,各種新技術(shù)肯定會(huì)風(fēng)起云涌,你方唱罷我登場(chǎng),NVIDIA的CUDA架構(gòu)和技術(shù),已經(jīng)被義無反顧地推到了歷史的舞臺(tái)上,至于它究竟能夠走多遠(yuǎn),是否能夠上演更精彩的故事,也許一切只有等待時(shí)間的檢驗(yàn)。