<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > 談GPU的作用、原理及與CPU、DSP的區(qū)別

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

          作者: 時間:2015-06-22 來源:網(wǎng)絡(luò) 收藏

            的區(qū)別是什么?

          本文引用地址:http://www.ex-cimer.com/article/276092.htm

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

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

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

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

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



          上一頁 1 2 下一頁

          關(guān)鍵詞: GPU CPU DSP

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();