0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CPU和GPU大不相同,究竟原因在哪?

5RJg_mcuworld ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2017-10-26 06:42 ? 次閱讀

在北京舉辦的NVIDIA GTC China會議中,無論是AI智能運(yùn)算,還是服務(wù)器數(shù)據(jù)中心、智能城市,甚至還有去年很火熱但是已經(jīng)很多人已經(jīng)支撐不下去的虛擬現(xiàn)實,看起來在很多內(nèi)心中依然是屬于圖形行業(yè)代表的NVIDIA已經(jīng)變得越來越豐滿,不過在這些新聞的背后,似乎還有更大膽的預(yù)言:摩爾定律已死,GPU最終會取代CPU。

摩爾定律是由英特爾Intel)創(chuàng)始人之一戈登·摩爾(Gordon Moore)提出來的。其內(nèi)容為:當(dāng)價格不變時,集成電路上可容納的元器件的數(shù)目,約每隔18-24個月便會增加一倍,性能也將提升一倍。換言之,每一美元所能買到的電腦性能,將每隔18-24個月翻一倍以上。這一定律揭示了信息技術(shù)進(jìn)步的速度。

概要:CPU和GPU之所以大不相同,是由于其設(shè)計目標(biāo)的不同,它們分別針對了兩種不同的應(yīng)用場景。

盡管這種趨勢已經(jīng)持續(xù)了超過半個世紀(jì),摩爾定律仍應(yīng)該被認(rèn)為是觀測或推測,而不是一個物理或自然法。然而,2010年國際半導(dǎo)體技術(shù)發(fā)展路線圖的更新增長已經(jīng)放緩在2013年年底,之后的時間里晶體管數(shù)量密度預(yù)計只會每三年翻一番。

CPU和GPU之所以大不相同,是由于其設(shè)計目標(biāo)的不同,它們分別針對了兩種不同的應(yīng)用場景。CPU需要很強(qiáng)的通用性來處理各種不同的數(shù)據(jù)類型,同時又要邏輯判斷又會引入大量的分支跳轉(zhuǎn)和中斷的處理。這些都使得CPU的內(nèi)部結(jié)構(gòu)異常復(fù)雜。而GPU面對的則是類型高度統(tǒng)一的、相互無依賴的大規(guī)模數(shù)據(jù)和不需要被打斷的純凈的計算環(huán)境。于是CPU和GPU就呈現(xiàn)出非常不同的架構(gòu)。

GPU采用了數(shù)量眾多的計算單元和超長的流水線,但只有非常簡單的控制邏輯并省去了Cache。而CPU不僅被Cache占據(jù)了大量空間,而且還有有復(fù)雜的控制邏輯和諸多優(yōu)化電路,相比之下計算能力只是CPU很小的一部分

從上圖可以看出:Cache, local memory: CPU > GPU Threads(線程數(shù)): GPU > CPURegisters: GPU > CPU 多寄存器可以支持非常多的Thread,Thread需要用到register,Thread數(shù)目大,register也必須得跟著很大才行。SIMD Unit(單指令多數(shù)據(jù)流,以同步方式,在同一時間內(nèi)執(zhí)行同一條指令): GPU > CPU。 CPU 基于低延時的設(shè)計:

CPU有強(qiáng)大的ALU(算術(shù)運(yùn)算單元),它可以在很少的時鐘周期內(nèi)完成算術(shù)計算。當(dāng)今的CPU可以達(dá)到64bit 雙精度。執(zhí)行雙精度浮點(diǎn)源算的加法和乘法只需要1~3個時鐘周期。CPU的時鐘周期的頻率是非常高的,達(dá)到1.532~3gigahertz(千兆HZ, 10的9次方),大的緩存也可以降低延時。保存很多的數(shù)據(jù)放在緩存里面,當(dāng)需要訪問的這些數(shù)據(jù),只要在之前訪問過的,如今直接在緩存里面取即可。復(fù)雜的邏輯控制單元。當(dāng)程序含有多個分支的時候,它通過提供分支預(yù)測的能力來降低延時。數(shù)據(jù)轉(zhuǎn)發(fā)。 當(dāng)一些指令依賴前面的指令結(jié)果時,數(shù)據(jù)轉(zhuǎn)發(fā)的邏輯控制單元決定這些指令在pipeline中的位置并且盡可能快的轉(zhuǎn)發(fā)一個指令的結(jié)果給后續(xù)的指令。這些動作需要很多的對比電路單元和轉(zhuǎn)發(fā)電路單元。

GPU是基于大的吞吐量設(shè)計。GPU的特點(diǎn)是有很多的ALU和很少的Cache,緩存的目的是保存后面需要訪問的數(shù)據(jù)的,這點(diǎn)和CPU不同,而是為Thread提高服務(wù)的。如果有很多線程需要訪問同一個相同的數(shù)據(jù),緩存會合并這些訪問,然后再去訪問dram(因為需要訪問的數(shù)據(jù)保存在dram中而不是Cache里面),獲取數(shù)據(jù)后Cache會轉(zhuǎn)發(fā)這個數(shù)據(jù)給對應(yīng)的線程,這個時候是數(shù)據(jù)轉(zhuǎn)發(fā)的角色。但是由于需要訪問dram,自然會帶來延時的問題。GPU的控制單元(左邊黃色區(qū)域塊)可以把多個的訪問合并成少的訪問。

GPU雖然有dram延時,卻有非常多的ALU和非常多的Thread,為了平衡內(nèi)存延時的問題,我們可以中充分利用多的ALU的特性達(dá)到一個非常大的吞吐量的效果。盡可能多的分配Threads。通常來看GPU ALU會有非常重的pipeline就是因為這樣。所以CPU擅長邏輯控制,串行的運(yùn)算。和通用類型數(shù)據(jù)運(yùn)算不同,GPU擅長的是大規(guī)模并發(fā)計算,這也正是密碼破解等所需要的。所以GPU除了圖像處理,也越來越多的參與到計算當(dāng)中來。

什么類型的程序適合在GPU上運(yùn)行?

(1)計算密集型的程序。所謂計算密集型(Compute-intensive)的程序,就是其大部分運(yùn)行時間花在了寄存器運(yùn)算上,寄存器的速度和處理器的速度相當(dāng),從寄存器讀寫數(shù)據(jù)幾乎沒有延時??梢宰鲆幌聦Ρ龋x內(nèi)存的延遲大概是幾百個時鐘周期;讀硬盤的速度就不說了,即便是SSD, 也實在是太慢了。

(2)易于并行的程序。GPU其實是一種SIMD(Single Instruction Multiple Data)架構(gòu), 他有成百上千個核,每一個核在同一時間最好能做同樣的事情。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10899

    瀏覽量

    212615
  • 摩爾定律
    +關(guān)注

    關(guān)注

    4

    文章

    636

    瀏覽量

    79171
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    4766

    瀏覽量

    129196

原文標(biāo)題:GPU會取代CPU的位置嗎?

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    昆侖海岸以物聯(lián)網(wǎng)技術(shù)引領(lǐng)水務(wù)行業(yè)變革

    ,水務(wù)行業(yè)的每個細(xì)分領(lǐng)域都大不相同,其中的每一條“支流”都大有文章。歷經(jīng)長期的磨合與發(fā)展,水務(wù)行業(yè)正將物聯(lián)網(wǎng)、AI、大數(shù)據(jù)等技術(shù)匯入行業(yè),通過調(diào)整工藝和適應(yīng)地理環(huán)境,形成以應(yīng)用為驅(qū)動的創(chuàng)新模式。
    的頭像 發(fā)表于 01-18 09:22 ?150次閱讀

    ADS1251從TEST+輸入相同固定的電壓,為何每次讀取到的數(shù)據(jù)都不相同?

    從TEST+輸入相同固定的電壓,,為何每次讀取到的數(shù)據(jù)都不相同?? 簡易電路圖: 以每一秒中段讀取一次~~不知為什數(shù)據(jù)會亂跳~~
    發(fā)表于 01-03 07:53

    ADS1256設(shè)置不同的數(shù)據(jù)輸出速率的時候,得到的24bit的輸出數(shù)據(jù)不相同,為什么?

    在使用ADS1256采集數(shù)據(jù)時出現(xiàn)問題描述如下:當(dāng)設(shè)置不同的數(shù)據(jù)輸出速率的時候,得到的24bit的輸出數(shù)據(jù)不相同。 采集系統(tǒng)硬件描述如下,下位機(jī)MCU采用的主頻為456MHZ,通過GPIO口跟
    發(fā)表于 12-13 06:34

    如何選擇適合的GPU

    在現(xiàn)代計算領(lǐng)域,GPU(圖形處理單元)的作用已經(jīng)遠(yuǎn)遠(yuǎn)超出了傳統(tǒng)的圖形渲染。從深度學(xué)習(xí)到科學(xué)計算,再到視頻編輯,GPU都在發(fā)揮著越來越重要的作用。然而,市場上的GPU型號繁多,性能和價格也各不相
    的頭像 發(fā)表于 10-27 11:07 ?408次閱讀

    TLC4502實際設(shè)計、使用中應(yīng)該特別注意些什么?

    TLC4502初看就是個性能優(yōu)越的運(yùn)放,實際上的內(nèi)部結(jié)構(gòu)與普通的運(yùn)放大不相同,實際設(shè)計、使用中應(yīng)該特別注意些什么?
    發(fā)表于 09-26 07:43

    請問正向輸入VF3與反向輸入VF2的波形為什么不相同呢?虛短怎么就不成立了呢?

    請問正向輸入VF3與反向輸入VF2的波形為什么不相同呢?虛短怎么就不成立了呢?
    發(fā)表于 08-16 12:07

    算力服務(wù)器為什么選擇GPU

    服務(wù)器會選擇GPU而不是傳統(tǒng)的CPU呢?GPUCPU的區(qū)別GPUCPU二者都由寄存器、控制器
    的頭像 發(fā)表于 07-25 08:28 ?749次閱讀
    算力服務(wù)器為什么選擇<b class='flag-5'>GPU</b>

    5G賦能智慧海洋,網(wǎng)絡(luò)怎么建?舟山移動探索出新路子

    紛紛揚(yáng)帆出海,開啟了海域5G網(wǎng)絡(luò)建設(shè)和業(yè)務(wù)發(fā)展新征程。海域無線環(huán)境、業(yè)務(wù)分布與陸地大不相同,運(yùn)營商多年積累并已輕車熟路的整套網(wǎng)絡(luò)規(guī)劃、建設(shè)、優(yōu)化和維護(hù)模式均面臨全新
    的頭像 發(fā)表于 06-06 08:05 ?348次閱讀
    5G賦能智慧海洋,網(wǎng)絡(luò)怎么建?舟山移動探索出新路子

    CPU渲染和GPU渲染優(yōu)劣分析

    使用計算機(jī)進(jìn)行渲染時,有兩種流行的系統(tǒng):基于中央處理單元(CPU)或基于圖形處理單元(GPU)。CPU渲染利用計算機(jī)的CPU來執(zhí)行場景并將其渲染到接近完美。這也是執(zhí)行渲染的更傳統(tǒng)方式。
    的頭像 發(fā)表于 05-23 08:27 ?666次閱讀
    <b class='flag-5'>CPU</b>渲染和<b class='flag-5'>GPU</b>渲染優(yōu)劣分析

    深度剖析AI網(wǎng)絡(luò)中GPU與光模塊配比及需求

    市場上存在多種計算光模塊與GPU比例的方法,導(dǎo)致結(jié)果不相同。造成這些差異的主要原因是不同網(wǎng)絡(luò)結(jié)構(gòu)中光模塊數(shù)量的波動。所需的光模塊的準(zhǔn)確數(shù)量主要取決于幾個關(guān)鍵因素。
    發(fā)表于 04-23 17:36 ?2184次閱讀
    深度剖析AI網(wǎng)絡(luò)中<b class='flag-5'>GPU</b>與光模塊配比及需求

    STM32WB55RGV6使用QSPI官方例程讀寫外部FLASH,讀出的數(shù)據(jù)跟寫入的數(shù)據(jù)不相同是為什么?

    STM32WB55RGV6 使用 QSPI 官方例程擦除、讀、寫 FLASH,每一步都返回OK,但是讀出的數(shù)據(jù)跟寫入的數(shù)據(jù)不相同,讀出的數(shù)據(jù)是 0X99 0X99 0X99 0XFF 0XFF 后面
    發(fā)表于 03-27 08:29

    PCF8563(RTC)讀取時間有誤是什么原因導(dǎo)致的?

    使用I2C硬件驅(qū)動模塊對EEPROM芯片進(jìn)行讀寫,是正常的。但對于PCF8563芯片通信時,讀取到的時間是有誤的,小時和分的數(shù)值也在經(jīng)常變化,【PCF8563與EEPROM的讀時序是相同的,且二者的從機(jī)地址也不相同】,請問這種情況是什么
    發(fā)表于 03-14 08:33

    gpu是什么和cpu的區(qū)別

    GPUCPU是兩種常見的計算機(jī)處理器,它們在結(jié)構(gòu)和功能上有很大的區(qū)別。在這篇文章中,我們將探討GPUCPU的區(qū)別,并詳細(xì)介紹它們的原理、應(yīng)用領(lǐng)域和性能特點(diǎn)。 一、概述 1.1
    的頭像 發(fā)表于 02-20 11:24 ?1.9w次閱讀

    gpu服務(wù)器是干什么的 gpu服務(wù)器與cpu服務(wù)器的區(qū)別有哪些

    gpu服務(wù)器是干什么的 gpu服務(wù)器與cpu服務(wù)器的區(qū)別 GPU服務(wù)器是一種專門用于處理圖形運(yùn)算的服務(wù)器,而CPU服務(wù)器則是一種處理通用計算
    的頭像 發(fā)表于 01-30 15:31 ?934次閱讀

    為什么GPUCPU更快?

    GPUCPU更快的原因并行處理能力:GPU可以同時處理多個任務(wù)和數(shù)據(jù),而CPU通常只能一次處理一項任務(wù)。這是因為
    的頭像 發(fā)表于 01-26 08:30 ?2513次閱讀
    為什么<b class='flag-5'>GPU</b>比<b class='flag-5'>CPU</b>更快?