GPU、CPU:不止一字之差那么簡單
4. GPU的現(xiàn)狀
GPU引發(fā)了計(jì)算機(jī)可視化的革命。處理器巨頭Intel感受到GPU帶來的強(qiáng)大的沖擊力,Intel專門開發(fā)了一套面向可編程的顯示計(jì)算通用架構(gòu)芯片的全新架構(gòu)———Larrabee架構(gòu)。它能帶來的效果可從英特爾公司高級副總裁兼數(shù)字企業(yè)事業(yè)部總經(jīng)理———帕特·基辛格在IDF峰會(huì)上的講話得出答案。
“可編程的顯示計(jì)算通用架構(gòu)芯片是一場革命,它將顛覆持續(xù)了幾十年的顯卡產(chǎn)業(yè),可編程的顯示計(jì)算通用架構(gòu)芯片雖然不會(huì)馬上替代顯卡,但是在三四年之后,隨著我們相關(guān)技術(shù)、產(chǎn)品的成熟上市,顯卡產(chǎn)業(yè)將消亡。”
按照英特爾的觀點(diǎn),隨著可編程的顯示計(jì)算通用架構(gòu)芯片的成熟,它將逐步取代GPU的地位,顯卡則會(huì)慢慢被集成取代,作為獨(dú)立硬件生存的空間會(huì)越來越小。
GPU如果只是作為顯卡就太浪費(fèi)了,因此NVIDIA推出CUDA(Compute Unified Device Architecture統(tǒng)一計(jì)算設(shè)備架構(gòu)),讓顯卡可以用于圖像計(jì)算以外的目的。并對GPU的功能進(jìn)行了重新的定義,CUDA是一個(gè)革命性的計(jì)算架構(gòu)和計(jì)算思路,能夠讓GPU在消費(fèi)、商務(wù)、技術(shù)等應(yīng)用方面大展拳腳,解決復(fù)雜的計(jì)算問題。CUDA能夠更有效地使用性能日益提升的GPU性能,有效地利用GPU的高速運(yùn)算能力,配合CPU進(jìn)行高性能通用計(jì)算。
GPU和高并行處理器都在同時(shí)間賽跑,快速的向前發(fā)展以搶占未來的市場,未來處理器的速度會(huì)在這次競爭中發(fā)展到什么地步值得我們期待。
5. GPU的應(yīng)用
GPU應(yīng)用的研究圍繞著高浮點(diǎn)運(yùn)算能力,可編程性和平行運(yùn)算進(jìn)行。到目前為止,GPU和CUDA的配合,主要應(yīng)用于商業(yè)高端運(yùn)算或者超級運(yùn)算。如tesla高性能計(jì)算,GPU加速M(fèi)atlab高性能計(jì)算,醫(yī)療圖像的生成等。
由于GPU的匯編指令比較復(fù)雜,而且對于各種版本的硬件的支持存在不統(tǒng)一的問題,一些高級語言(例如GLSL、HLSL)已經(jīng)被一些大廠商開發(fā)出來,加快了對GPU編程的應(yīng)用研究。從系統(tǒng)架構(gòu)上看,GPU是針對向量計(jì)算進(jìn)行了優(yōu)化的高度并行的數(shù)據(jù)流處理器,其中包括兩種流處理單元:多指令多數(shù)據(jù)流(MIMD)的處理單元———頂點(diǎn)處理流水線(Vertex Shader),單指令多數(shù)據(jù)流(SIMD)的處理單元———像素處理流水線。這種以數(shù)據(jù)流作為處理單元的處理器,在對數(shù)據(jù)流的處理上可以獲取較高的效率,因此很多研究人員從事一個(gè)新的研究領(lǐng)域:基于GPU 的通用計(jì)算(GPGPU:General- Purpose Computation onGraphics Processors),其主要研究內(nèi)容除了圖形處理以外,考慮更為廣泛的應(yīng)用計(jì)算。GPU最初的設(shè)計(jì)思想給這個(gè)新的領(lǐng)域帶來了問題。GPU是專門為圖形處理設(shè)計(jì)的處理器,它具有自己的存儲(chǔ)單元,在數(shù)據(jù)存取方式上存在一定的特殊性,而且通常對GPU進(jìn)行開發(fā)的是一些游戲廠商,使用非標(biāo)準(zhǔn)的編程模式,編程環(huán)境和體系結(jié)構(gòu)方面絕大部分被當(dāng)做商業(yè)機(jī)密,沒有對研究人員公開,可參考的資料就有限,研究人員在研究并行算法的同時(shí)還必須研究如何使GPU在進(jìn)行通用計(jì)算時(shí)取得最高的性能。針對上面的問題,研究人員已經(jīng)提出了GPU通用編程模型和方法,無疑推動(dòng)了GPU在非圖形學(xué)領(lǐng)域的應(yīng)用。
最近幾年,在GPGPU方面取得了不少的成果,比如代數(shù)計(jì)算及流體模擬、數(shù)據(jù)庫操作、頻譜變換和濾波等。軟件編程方面也有成果,高級繪制語言及實(shí)時(shí)繪制語言(繪制程序設(shè)計(jì)的思想源自于早年P(guān)ixar設(shè)計(jì)的RenderMan繪制軟件,此軟件多年來廣泛應(yīng)用于好萊塢電影制作的繪制),OpenGL shading language、斯坦福大學(xué)的RTSL(real- time shading language)、Microsoft的HLSL(high- level shading language) 以及NVIDIA的Cg在此方面具有較大的影響;流處理機(jī)編程環(huán)境及工具已開發(fā)出來擴(kuò)大GPU的編程。
6. 結(jié)語
目前,CUDA和GPU的配合還不是很默契,真正面向民用市場還需一些時(shí)日,圖形處理的市場越來越大,給GPU的發(fā)展提供了強(qiáng)大的驅(qū)動(dòng)力。GPU應(yīng)用于通用計(jì)算領(lǐng)域已經(jīng)取得了一定的進(jìn)展,GPU的身影會(huì)逐漸地出現(xiàn)在民用市場。
GPU和CPU的最終結(jié)果會(huì)怎樣?眾多因素的影響現(xiàn)在還不得而知。GPU會(huì)不會(huì)像386時(shí)代一樣,最初作為獨(dú)立芯片的數(shù)學(xué)協(xié)處理器387,最終融合到CPU中而消亡或者NVIDIA真的開發(fā)出像CPU那樣能處理各種通用運(yùn)算的GPU,GPU時(shí)代到來。無數(shù)的遐想出現(xiàn)在我們的頭腦,還是讓市場來決定這個(gè)容易引起爭議的問題。
評論