新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 談GPU的作用、原理及與CPU、DSP的區別

        談GPU的作用、原理及與CPU、DSP的區別

        作者: 時間:2015-05-28 來源:網絡 收藏

          GPU和的區別是什么?

        本文引用地址:http://www.104case.com/article/274881.htm

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

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

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

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

        c語言相關文章:c語言教程



        上一頁 1 2 下一頁

        關鍵詞: CPU DSP

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乌拉特中旗| 齐齐哈尔市| 夹江县| 大冶市| 开远市| 永康市| 政和县| 墨玉县| 桓台县| 阳信县| 杂多县| 蚌埠市| 玉溪市| 比如县| 澎湖县| 额济纳旗| 罗源县| 泸定县| 仁布县| 若羌县| 扎囊县| 汝城县| 宝丰县| 胶州市| 安泽县| 丽江市| 紫金县| 平和县| 镇平县| 青州市| 阜南县| 萨嘎县| 社旗县| 屯门区| 吉安市| 屏东市| 木兰县| 钟祥市| 东源县| 贺兰县| 佛学|