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

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

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

一文搞懂 CPU、GPU 和 TPU

電子工程師 ? 來源:未知 ? 作者:工程師李察 ? 2018-09-15 10:46 ? 次閱讀

張量處理單元(TPU)是一種定制化的 ASIC 芯片,它由谷歌從頭設(shè)計(jì),并專門用于機(jī)器學(xué)習(xí)工作負(fù)載。TPU 為谷歌的主要產(chǎn)品提供了計(jì)算支持,包括翻譯、照片、搜索助理和 Gmail 等。

在本文中,我們將關(guān)注 TPU 某些特定的屬性。

神經(jīng)網(wǎng)絡(luò)如何運(yùn)算

在我們對(duì)比 CPUGPU 和 TPU 之前,我們可以先了解到底機(jī)器學(xué)習(xí)或神經(jīng)網(wǎng)絡(luò)需要什么樣的計(jì)算。如下所示,假設(shè)我們使用單層神經(jīng)網(wǎng)絡(luò)識(shí)別手寫數(shù)字。

如果圖像為 28×28 像素的灰度圖,那么它可以轉(zhuǎn)化為包含 784 個(gè)元素的向量。神經(jīng)元會(huì)接收所有 784 個(gè)值,并將它們與參數(shù)值(上圖紅線)相乘,因此才能識(shí)別為「8」。其中參數(shù)值的作用類似于用「濾波器」從數(shù)據(jù)中抽取特征,因而能計(jì)算輸入圖像與「8」之間的相似性:

這是對(duì)神經(jīng)網(wǎng)絡(luò)做數(shù)據(jù)分類最基礎(chǔ)的解釋,即將數(shù)據(jù)與對(duì)應(yīng)的參數(shù)相乘(上圖兩種顏色的點(diǎn)),并將它們加在一起(上圖右側(cè)收集計(jì)算結(jié)果)。如果我們能得到最高的預(yù)測值,那么我們會(huì)發(fā)現(xiàn)輸入數(shù)據(jù)與對(duì)應(yīng)參數(shù)非常匹配,這也就最可能是正確的答案。

簡單而言,神經(jīng)網(wǎng)絡(luò)在數(shù)據(jù)和參數(shù)之間需要執(zhí)行大量的乘法和加法。我們通常會(huì)將這些乘法與加法組合為矩陣運(yùn)算,這在我們大學(xué)的線性代數(shù)中會(huì)提到。所以關(guān)鍵點(diǎn)是我們?cè)撊绾慰焖賵?zhí)行大型矩陣運(yùn)算,同時(shí)還需要更小的能耗。

CPU 如何運(yùn)行

因此 CPU 如何來執(zhí)行這樣的大型矩陣運(yùn)算任務(wù)呢?一般 CPU 是基于馮諾依曼架構(gòu)的通用處理器,這意味著 CPU 與軟件和內(nèi)存的運(yùn)行方式如下:

圖:CPU 如何運(yùn)行

CPU 最大的優(yōu)勢是靈活性。通過馮諾依曼架構(gòu),我們可以為數(shù)百萬的不同應(yīng)用加載任何軟件。我們可以使用 CPU 處理文字、控制火箭引擎、執(zhí)行銀行交易或者使用神經(jīng)網(wǎng)絡(luò)分類圖像。

但是,由于 CPU 非常靈活,硬件無法一直了解下一個(gè)計(jì)算是什么,直到它讀取了軟件的下一個(gè)指令。CPU 必須在內(nèi)部將每次計(jì)算的結(jié)果保存到內(nèi)存中(也被稱為寄存器或 L1 緩存)。內(nèi)存訪問成為 CPU 架構(gòu)的不足,被稱為馮諾依曼瓶頸。

雖然神經(jīng)網(wǎng)絡(luò)的大規(guī)模運(yùn)算中的每一步都是完全可預(yù)測的,每一個(gè) CPU 的算術(shù)邏輯單元(ALU,控制乘法器和加法器的組件)都只能一個(gè)接一個(gè)地執(zhí)行它們,每一次都需要訪問內(nèi)存,限制了總體吞吐量,并需要大量的能耗。

GPU 如何工作

為了獲得比 CPU 更高的吞吐量,GPU 使用一種簡單的策略:在單個(gè)處理器中使用成千上萬個(gè) ALU?,F(xiàn)代 GPU 通常在單個(gè)處理器中擁有 2500-5000 個(gè) ALU,意味著你可以同時(shí)執(zhí)行數(shù)千次乘法和加法運(yùn)算。

圖:GPU 如何工作

這種 GPU 架構(gòu)在有大量并行化的應(yīng)用中工作得很好,例如在神經(jīng)網(wǎng)絡(luò)中的矩陣乘法。實(shí)際上,相比 CPU,GPU 在深度學(xué)習(xí)的典型訓(xùn)練工作負(fù)載中能實(shí)現(xiàn)高幾個(gè)數(shù)量級(jí)的吞吐量。這正是為什么 GPU 是深度學(xué)習(xí)中最受歡迎的處理器架構(gòu)。

但是,GPU 仍然是一種通用的處理器,必須支持幾百萬種不同的應(yīng)用和軟件。這又把我們帶回到了基礎(chǔ)的問題,馮諾依曼瓶頸。在每次幾千個(gè) ALU 的計(jì)算中,GPU 都需要訪問寄存器或共享內(nèi)存來讀取和保存中間計(jì)算結(jié)果。

因?yàn)?GPU 在其 ALU 上執(zhí)行更多的并行計(jì)算,它也會(huì)成比例地耗費(fèi)更多的能量來訪問內(nèi)存,同時(shí)也因?yàn)閺?fù)雜的線路而增加 GPU 的物理空間占用。

TPU 如何工作

當(dāng)谷歌設(shè)計(jì) TPU 的時(shí)候,我們構(gòu)建了一種領(lǐng)域特定的架構(gòu)。這意味著,我們沒有設(shè)計(jì)一種通用的處理器,而是專用于神經(jīng)網(wǎng)絡(luò)工作負(fù)載的矩陣處理器。

TPU 不能運(yùn)行文本處理軟件、控制火箭引擎或執(zhí)行銀行業(yè)務(wù),但它們可以為神經(jīng)網(wǎng)絡(luò)處理大量的乘法和加法運(yùn)算,同時(shí) TPU 的速度非??臁⒛芎姆浅P∏椅锢砜臻g占用也更小。

其主要助因是對(duì)馮諾依曼瓶頸的大幅度簡化。因?yàn)樵撎幚砥鞯闹饕蝿?wù)是矩陣處理,TPU 的硬件設(shè)計(jì)者知道該運(yùn)算過程的每個(gè)步驟。因此他們放置了成千上萬的乘法器和加法器并將它們直接連接起來,以構(gòu)建那些運(yùn)算符的物理矩陣。

這被稱作脈動(dòng)陣列(Systolic Array)架構(gòu)。在 Cloud TPU v2 的例子中,有兩個(gè) 128X128 的脈動(dòng)陣列,在單個(gè)處理器中集成了 32768 個(gè) ALU 的 16 位浮點(diǎn)值。

我們來看看一個(gè)脈動(dòng)陣列如何執(zhí)行神經(jīng)網(wǎng)絡(luò)計(jì)算。首先,TPU 從內(nèi)存加載參數(shù)到乘法器和加法器的矩陣中。

圖:TPU 如何工作

然后,TPU 從內(nèi)存加載數(shù)據(jù)。當(dāng)每個(gè)乘法被執(zhí)行后,其結(jié)果將被傳遞到下一個(gè)乘法器,同時(shí)執(zhí)行加法。因此結(jié)果將是所有數(shù)據(jù)和參數(shù)乘積的和。在大量計(jì)算和數(shù)據(jù)傳遞的整個(gè)過程中,不需要執(zhí)行任何的內(nèi)存訪問。

這就是為什么 TPU 可以在神經(jīng)網(wǎng)絡(luò)運(yùn)算上達(dá)到高計(jì)算吞吐量,同時(shí)能耗和物理空間都很小。

因此使用 TPU 架構(gòu)的好處就是:成本降低至 1/5。

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

    關(guān)注

    455

    文章

    50816

    瀏覽量

    423615
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10863

    瀏覽量

    211763
  • 谷歌
    +關(guān)注

    關(guān)注

    27

    文章

    6168

    瀏覽量

    105380

原文標(biāo)題:一文搞懂 CPU、GPU 和 TPU

文章出處:【微信號(hào):FPGAer_Club,微信公眾號(hào):FPGAer俱樂部】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    看懂】大白話解釋“GPUGPU算力”

    隨著大模型的興起,“GPU算力”這個(gè)詞正頻繁出現(xiàn)在人工智能、游戲、圖形設(shè)計(jì)等工作場景中,什么是GPU,它與CPU的區(qū)別是什么?以及到底什么是GPU算力?本篇文章主要從以下5個(gè)角度,讓您
    的頭像 發(fā)表于 10-29 08:05 ?626次閱讀
    【<b class='flag-5'>一</b><b class='flag-5'>文</b>看懂】大白話解釋“<b class='flag-5'>GPU</b>與<b class='flag-5'>GPU</b>算力”

    【「大模型時(shí)代的基礎(chǔ)架構(gòu)」閱讀體驗(yàn)】+ 第、二章學(xué)習(xí)感受

    常用的機(jī)器學(xué)習(xí)算法,重點(diǎn)剖析了元線性回歸算法,由此引出機(jī)器學(xué)習(xí)算法的運(yùn)算特征,此后分別描述了使用CPUGPU、TPU和NPU運(yùn)行機(jī)器學(xué)習(xí)算法的特點(diǎn),比如
    發(fā)表于 10-10 10:36

    TPU v1到Trillium TPU,蘋果等科技公司使用谷歌TPU進(jìn)行AI計(jì)算

    ,在訓(xùn)練尖端人工智能方面,大型科技公司正在尋找英偉達(dá)以外的替代品。 ? 不斷迭代的谷歌TPU 芯片 ? 隨著機(jī)器學(xué)習(xí)算法,特別是深度學(xué)習(xí)算法在各個(gè)領(lǐng)域的廣泛應(yīng)用,對(duì)于高效、低功耗的AI計(jì)算硬件需求日益增長。傳統(tǒng)的CPUGPU
    的頭像 發(fā)表于 07-31 01:08 ?3374次閱讀

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

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

    X-Silicon發(fā)布RISC-V新架構(gòu) 實(shí)現(xiàn)CPU/GPU體化

    X-Silicon 的芯片與其他架構(gòu)不同,其設(shè)計(jì)將 CPUGPU 的功能整合到單核架構(gòu)中。這與英特爾和 AMD 的典型設(shè)計(jì)不同,前者有獨(dú)立的 CPU 內(nèi)核和 GPU 內(nèi)核。
    發(fā)表于 04-08 11:34 ?586次閱讀
    X-Silicon發(fā)布RISC-V新架構(gòu) 實(shí)現(xiàn)<b class='flag-5'>CPU</b>/<b class='flag-5'>GPU</b><b class='flag-5'>一</b>體化

    RISC-V芯片新突破:CPUGPU體化核心設(shè)計(jì)

    X-Silicon 的芯片與其他架構(gòu)不同,其設(shè)計(jì)將 CPUGPU 的功能結(jié)合到單核架構(gòu)中。這與 Intel 和 AMD 的典型設(shè)計(jì)不同,后者有獨(dú)立的 CPU 核心和 GPU 核心
    發(fā)表于 04-07 10:41 ?731次閱讀
    RISC-V芯片新突破:<b class='flag-5'>CPU</b>與<b class='flag-5'>GPU</b><b class='flag-5'>一</b>體化核心設(shè)計(jì)

    詳解GPU硬件與CUDA開發(fā)工具

    CPUGPU 的顯著區(qū)別是:個(gè)典型的 CPU 擁有少數(shù)幾個(gè)快速的計(jì)算核心,而個(gè)典型的 GPU
    的頭像 發(fā)表于 03-21 10:15 ?1179次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>詳解<b class='flag-5'>GPU</b>硬件與CUDA開發(fā)工具

    Groq推出大模型推理芯片 超越了傳統(tǒng)GPU和谷歌TPU

    Groq推出了大模型推理芯片,以每秒500tokens的速度引起轟動(dòng),超越了傳統(tǒng)GPU和谷歌TPU。
    的頭像 發(fā)表于 02-26 10:24 ?1041次閱讀
    Groq推出大模型推理芯片 超越了傳統(tǒng)<b class='flag-5'>GPU</b>和谷歌<b class='flag-5'>TPU</b>

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

    GPUCPU是兩種常見的計(jì)算機(jī)處理器,它們?cè)诮Y(jié)構(gòu)和功能上有很大的區(qū)別。在這篇文章中,我們將探討GPUCPU的區(qū)別,并詳細(xì)介紹它們的原理、應(yīng)用領(lǐng)域和性能特點(diǎn)。
    的頭像 發(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ù)器,而
    的頭像 發(fā)表于 01-30 15:31 ?868次閱讀

    為什么GPUCPU更快?

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

    tpu材料的用途和特點(diǎn)

    TPU材料,即熱塑性聚氨酯(Thermoplastic Polyurethane),是種聚合物材料,具有廣泛的應(yīng)用領(lǐng)域和獨(dú)特的特點(diǎn)。 TPU材料的主要用途如下: 鞋類行業(yè):TPU材料
    的頭像 發(fā)表于 01-16 10:17 ?3266次閱讀

    GPU是顯卡嗎 cpugpu哪個(gè)算力強(qiáng)

    GPU(圖形處理器)是顯卡(顯像處理器)的種,它是種專門用于圖形計(jì)算的處理器。顯卡是計(jì)算機(jī)中的個(gè)重要組件,負(fù)責(zé)處理和渲染圖形,使它們能夠在顯示屏上顯示出來。
    的頭像 發(fā)表于 01-10 15:45 ?5287次閱讀

    TPU-MLIR開發(fā)環(huán)境配置時(shí)出現(xiàn)的各種問題求解

    按照 TPU-MLIR 開發(fā)指南進(jìn)行環(huán)境配置: 2.1. 代碼下載? 代碼路徑: https://github.com/sophgo/tpu-mlir 克隆該代碼后, 需要在Docker中編譯
    發(fā)表于 01-10 08:02

    CPUGPU散熱器設(shè)計(jì)的異同及其重要性

    計(jì)算機(jī)的穩(wěn)定和性能不受影響,散熱器成為了必要的組件。本文將詳述CPUGPU散熱器的設(shè)計(jì)異同以及其重要性。 、設(shè)計(jì)異同 1. 散熱原理: CPU
    的頭像 發(fā)表于 01-09 14:00 ?1299次閱讀