新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 談GPU的作用、原理及與CPU、DSP的區(qū)別

談GPU的作用、原理及與CPU、DSP的區(qū)別

作者: 時(shí)間:2015-05-28 來(lái)源:網(wǎng)絡(luò) 收藏

  GPU和的區(qū)別是什么?

本文引用地址:http://butianyuan.cn/article/274881.htm

  要解釋兩者的區(qū)別,要先明白兩者的相同之處:兩者都有總線和外界聯(lián)系,有自己的緩存體系,以及數(shù)字和邏輯運(yùn)算單元。一句話,兩者都為了完成計(jì)算任務(wù)而設(shè)計(jì)。

  兩者的區(qū)別在于存在于片內(nèi)的緩存體系和數(shù)字邏輯運(yùn)算單元的結(jié)構(gòu)差異:雖然有多核,但總數(shù)沒(méi)有超過(guò)兩位數(shù),每個(gè)核都有足夠大的緩存和足夠多的數(shù)字和邏輯運(yùn)算單元,并輔助有很多加速分支判斷甚至更復(fù)雜的邏輯判斷的硬件;GPU的核數(shù)遠(yuǎn)超,被稱為眾核(NVIDIA Fermi有512個(gè)核)。每個(gè)核擁有的緩存大小相對(duì)小,數(shù)字邏輯運(yùn)算單元也少而簡(jiǎn)單(GPU初始時(shí)在浮點(diǎn)計(jì)算上一直弱于CPU)。從結(jié)果上導(dǎo)致CPU擅長(zhǎng)處理具有復(fù)雜計(jì)算步驟和復(fù)雜數(shù)據(jù)依賴的計(jì)算任務(wù),如分布式計(jì)算,數(shù)據(jù)壓縮,人工智能,物理模擬,以及其他很多很多計(jì)算任務(wù)等。GPU由于歷史原因,是為了視頻游戲而產(chǎn)生的(至今其主要驅(qū)動(dòng)力還是不斷增長(zhǎng)的視頻游戲市場(chǎng)),在三維游戲中常常出現(xiàn)的一類操作是對(duì)海量數(shù)據(jù)進(jìn)行相同的操作,如:對(duì)每一個(gè)頂點(diǎn)進(jìn)行同樣的坐標(biāo)變換,對(duì)每一個(gè)頂點(diǎn)按照同樣的光照模型計(jì)算顏色值。GPU的眾核架構(gòu)非常適合把同樣的指令流并行發(fā)送到眾核上,采用不同的輸入數(shù)據(jù)執(zhí)行。在2003-2004年左右,圖形學(xué)之外的領(lǐng)域?qū)<议_(kāi)始注意到GPU與眾不同的計(jì)算能力,開(kāi)始嘗試把GPU用于通用計(jì)算(即GPGPU)。之后NVIDIA發(fā)布了CUDA,AMD和Apple等公司也發(fā)布了OpenCL,GPU開(kāi)始在通用計(jì)算領(lǐng)域得到廣泛應(yīng)用,包括:數(shù)值分析,海量數(shù)據(jù)處理(排序,Map-Reduce等),金融分析等等。

  簡(jiǎn)而言之,當(dāng)程序員為CPU編寫(xiě)程序時(shí),他們傾向于利用復(fù)雜的邏輯結(jié)構(gòu)優(yōu)化算法從而減少計(jì)算任務(wù)的運(yùn)行時(shí)間,即Latency.當(dāng)程序員為GPU編寫(xiě)程序時(shí),則利用其處理海量數(shù)據(jù)的優(yōu)勢(shì),通過(guò)提高總的數(shù)據(jù)吞吐量(Throughput)來(lái)掩蓋Lantency.目前,CPU和GPU的區(qū)別正在逐漸縮小,因?yàn)镚PU也在處理不規(guī)則任務(wù)和線程間通信方面有了長(zhǎng)足的進(jìn)步。另外,功耗問(wèn)題對(duì)于GPU比CPU更嚴(yán)重。

  總的來(lái)講,GPU和CPU的區(qū)別是個(gè)很大的話題,甚至可以花一個(gè)學(xué)期用32個(gè)學(xué)時(shí)十幾次講座來(lái)講。

c語(yǔ)言相關(guān)文章:c語(yǔ)言教程



上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: CPU DSP

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉