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

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

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

分享關(guān)于AI處理器的相關(guān)科普

lC49_半導(dǎo)體 ? 來源:djl ? 作者:John Lakness ? 2019-08-27 10:22 ? 次閱讀

在本文中,我們將從三個(gè)方面介紹人工智能系統(tǒng)中使用的核心處理器體系結(jié)構(gòu)的最常見選擇:標(biāo)量、向量和空間。對(duì)于每種情況,我們都將對(duì)其性能特征和優(yōu)化算法的類型進(jìn)行一些概括。在后面的文章中,我們將更深入地討論它們是如何實(shí)現(xiàn)的,以及它們?cè)诓煌愋偷?a href="http://srfitnesspt.com/tags/ai/" target="_blank">AI工作負(fù)載上的性能。

Flynn分類法

如果沒有相當(dāng)流行的“Flynn分類法”,任何對(duì)處理器架構(gòu)的闡述都是不完整的,因?yàn)槊ê艹R?。它的初衷是描述一臺(tái)哈佛架構(gòu)計(jì)算機(jī)如何攝取指令和數(shù)據(jù)流,并且盡可能在這種情況下最有意義。盡管如此,現(xiàn)代處理器通常比其他處理器更接近于一種特性,因此我們經(jīng)常用這種方式來指代它們,但我們應(yīng)該注意,假設(shè)任何現(xiàn)代處理器都完全符合其中一種類型,那將是一個(gè)嚴(yán)重的過度簡化。這里介紹的是一種比較開放的稍微現(xiàn)代一些的分類法。

SISD:單指令單數(shù)據(jù)

最簡單的CPU形式適合這一類。CPU的每個(gè)循環(huán)攝取指令和數(shù)據(jù)元素并處理它們以便修改全局狀態(tài)。這個(gè)概念是計(jì)算機(jī)科學(xué)的基礎(chǔ),因此大多數(shù)編程語言都編譯成一組針對(duì)這種架構(gòu)的指令。大多數(shù)現(xiàn)代CPU也模擬SISD操作,盡管軟件和硬件中可能會(huì)用到非常不同的概念。

SIMD:單指令多數(shù)據(jù)

最簡單的SIMD架構(gòu)是矢量處理器,類似于具有更寬數(shù)據(jù)類型的SISD架構(gòu),因此每條指令在多個(gè)連續(xù)數(shù)據(jù)元素上運(yùn)行。稍微復(fù)雜的是線程并行性,其中單個(gè)指令在多個(gè)線程狀態(tài)上操作,這是更通用的編程模型。

MISD:多指令單數(shù)據(jù)

對(duì)于什么是錯(cuò)誤處理程序沒有普遍的共識(shí),所以我在這里將不做限制??紤]一個(gè)架構(gòu),它能夠在單個(gè)數(shù)據(jù)輸入上以單個(gè)周期的順序執(zhí)行多個(gè)任意指令。這基本上需要從輸出到輸入進(jìn)行多路復(fù)用,而不存儲(chǔ)中間結(jié)果。稍后,我們將看到這種高級(jí)體系結(jié)構(gòu)的優(yōu)點(diǎn)。

MIMD:多指令多數(shù)據(jù)

我再次不設(shè)限地說,一個(gè)非常長的指令字(VLIW)處理器最適合這個(gè)類別。這種處理器的目的是公開一個(gè)更精確地適合處理器可用資源的編程模型。VLIW指令能夠同時(shí)向所有執(zhí)行單元發(fā)送數(shù)據(jù),這通過指令級(jí)并行(ILP)具有很大的性能優(yōu)勢(shì),但編譯器必須具有體系結(jié)構(gòu)感知能力并執(zhí)行所有調(diào)度優(yōu)化。一般來說,這被證實(shí)具有挑戰(zhàn)性。

標(biāo)量(CPUs):混合性能

現(xiàn)代CPU是一個(gè)非常復(fù)雜的系統(tǒng),旨在很好地完成各種任務(wù)。它的元素涵蓋了Flynn的每一類分類。您當(dāng)然可以將其編程為SISD機(jī)器,它將為您提供輸出,就好像程序是按照您給出的順序計(jì)算的一樣。但是,每個(gè)CISC指令通常被轉(zhuǎn)換為多個(gè)RISC指令鏈,以便在單個(gè)數(shù)據(jù)元素(MISD)上執(zhí)行。它還將查看您提供的所有指令和數(shù)據(jù),并將它們并行排列以便在許多不同的執(zhí)行單元(MIMD)上執(zhí)行數(shù)據(jù)。還有許多操作,例如在AVX指令集中,對(duì)許多并行對(duì)齊的數(shù)據(jù)元素(SIMD)執(zhí)行相同的計(jì)算。此外,由于多個(gè)內(nèi)核和多個(gè)線程并行運(yùn)行以在單個(gè)內(nèi)核上同時(shí)使用資源,因此可以實(shí)現(xiàn)Flynn分類法中的幾乎任何類型的并行性。

代碼優(yōu)化器

如果CPU要以簡單的SISD模式運(yùn)行,從存儲(chǔ)器中一次一個(gè)地抓取每個(gè)指令和數(shù)據(jù)元素,那么不管頻率有多高,它都會(huì)非常慢。在現(xiàn)代處理器中,只有相對(duì)較小部分的管芯區(qū)域?qū)S糜趯?shí)際執(zhí)行算術(shù)和邏輯。其余部分專門用于預(yù)測(cè)程序接下來要做什么,并在不違反任何因果約束的情況下排列指令和數(shù)據(jù)以有效執(zhí)行。也許與CPU的性能和其他體系結(jié)構(gòu)相比,關(guān)系最密切的是對(duì)條件分支的處理。它不是等待解析一個(gè)分支,而是預(yù)測(cè)要朝哪個(gè)方向走,然后在出錯(cuò)時(shí)完全恢復(fù)處理器狀態(tài)。在硅片上蝕刻了數(shù)百個(gè)這樣的技巧,這些技巧在各種各樣的工作負(fù)載上進(jìn)行測(cè)試,在執(zhí)行高度復(fù)雜的任意代碼時(shí)提供極大的優(yōu)勢(shì)。

摩爾定律哲學(xué)

在我的第一份工作中,我被指派去集成一個(gè)非常昂貴的專用集成電路,這被認(rèn)為是實(shí)時(shí)解碼衛(wèi)星圖像所必需的。我注意到這個(gè)設(shè)計(jì)有幾年的歷史了,我做了一些計(jì)算,結(jié)果告訴我,我可以在英特爾處理器上擁有幾乎相同的計(jì)算能力。在ASIC可用之前,我用C語言編寫了該算法,并在奔騰III CPU上演示了該系統(tǒng)。那時(shí)候,'Dennard Scaling'的速度如此之快,以至于在一小段時(shí)間內(nèi),通用處理器的性能提升超過了對(duì)專用處理器的需求。選擇通用處理器的最大優(yōu)勢(shì)可能是它易于編程,這使其成為算法開發(fā)和系統(tǒng)集成的首選平臺(tái)。可以將算法優(yōu)化為更專業(yè)的處理器,但CPU已經(jīng)非常擅長為您執(zhí)行此操作。在我的特殊情況下,第一版衛(wèi)星使用Reed-Solomon碼,但以后的設(shè)計(jì)還是考慮用Turbo碼。使用ASIC的下行鏈路站點(diǎn)必須更換整個(gè)系統(tǒng),我們的站點(diǎn)將使用簡單的軟件更新和常規(guī)CPU升級(jí)。因此,您可以花時(shí)間優(yōu)化代碼,也可以將時(shí)間花在創(chuàng)新應(yīng)用程序上。摩爾定律的推論是,很快就會(huì)足夠快。

矢量(GPU和TPU):簡單和平行

在許多方面,矢量處理器是最簡單的現(xiàn)代體系結(jié)構(gòu):一個(gè)非常有限的計(jì)算單元,它在芯片上重復(fù)多次,以便在大量數(shù)據(jù)上執(zhí)行相同的操作。這些都是第一次普及的圖形,因此術(shù)語GPU。一般來說,GPU不具備CPU為優(yōu)化復(fù)雜的任意代碼所做的預(yù)測(cè)gymnastics功能,并且具體地具有僅限于支持某些類型的計(jì)算的有限指令集。GPU性能的大部分進(jìn)步都是通過密度,面積,頻率和內(nèi)存帶寬的基本技術(shù)擴(kuò)展實(shí)現(xiàn)的。

GPGPU

最近有一種趨勢(shì)是擴(kuò)展GPU指令集以支持通用計(jì)算。這些gp指令必須經(jīng)過調(diào)整才能在simd體系結(jié)構(gòu)上運(yùn)行,這就暴露了一些優(yōu)點(diǎn)和缺點(diǎn),具體取決于算法。許多被編程為在CPU上作為重復(fù)循環(huán)運(yùn)行的算法實(shí)際上只是在每個(gè)循環(huán)中對(duì)數(shù)組的每個(gè)相鄰數(shù)據(jù)元素執(zhí)行相同的操作。通過一些程序員的努力,它們可以很容易地并行化,有時(shí)在GPU上大規(guī)模地并行化。

值得注意的是。如果任何元素上有任何條件,那么所有分支都必須在所有元素上運(yùn)行。對(duì)于復(fù)雜代碼,這可能意味著計(jì)算時(shí)間相對(duì)于CPU呈指數(shù)增長。GPU具有非常寬的內(nèi)存總線,可以提供出色的流數(shù)據(jù)性能,但是如果內(nèi)存訪問與向量處理器元素不一致,那么每個(gè)數(shù)據(jù)元素都需要來自內(nèi)存總線的單獨(dú)請(qǐng)求,而CPU具有非常復(fù)雜的預(yù)測(cè)緩存機(jī)制,可以大大補(bǔ)償這一點(diǎn)。

內(nèi)存本身非??斓耐瑫r(shí)也非常小,并且依賴于PCIe總線上的數(shù)據(jù)訪問傳輸。在一般情況下,GPGPU算法的開發(fā)比CPU要困難得多。然而,這種挑戰(zhàn)在一定程度上是通過發(fā)現(xiàn)和優(yōu)化高效的并行算法來解決的,這些算法通過統(tǒng)一的執(zhí)行分支和對(duì)齊的內(nèi)存訪問獲得相同的結(jié)果。通常,這些算法在原始操作方面效率較低,但在并行架構(gòu)中執(zhí)行速度更快。

AI操作

許多人工智能中流行的算法都是基于線性代數(shù)的,而參數(shù)矩陣的大規(guī)模擴(kuò)展使得該領(lǐng)域有了很大的進(jìn)步。GPU的并行性允許最基本的線性代數(shù)的大規(guī)模加速,因此它適合AI研究人員,只要它們保持在矩陣上密集線性代數(shù)的范圍內(nèi),矩陣足夠大以占據(jù)大部分處理元素,小到足以容納GPU的內(nèi)存。然而,這種加速是如此之快,以至于到今天為止,在這些限制下,在深入學(xué)習(xí)方面已經(jīng)取得了很大的進(jìn)展。

GPU中現(xiàn)代開發(fā)的兩個(gè)主要推動(dòng)力是Tensor Processing Unit(TPU),它們?cè)谝粋€(gè)周期內(nèi)執(zhí)行全矩陣運(yùn)算,而多GPU互連則用于處理更大的網(wǎng)絡(luò)。我們?cè)趯S脠D形的硬件架構(gòu)和為AI設(shè)計(jì)的硬件之間經(jīng)歷了更大的分歧。

今天,我們?cè)趯S脠D形的硬件架構(gòu)和為AI設(shè)計(jì)的硬件之間遇到了更大的分歧。最簡單的分歧是在精度上,AI正在開發(fā)基于低精度浮點(diǎn)和整數(shù)運(yùn)算的技術(shù)。稍顯遲鈍的是圖形處理器用來實(shí)時(shí)呈現(xiàn)令人信服的復(fù)雜場(chǎng)景重現(xiàn)的快捷方式,通常使用非常專業(yè)的計(jì)算單元。因此,架構(gòu)之間的相似性以兩者的最高優(yōu)化級(jí)別結(jié)束。

Systolic Arrays

ASIC或FPGA可以為任何類型的計(jì)算體系結(jié)構(gòu)設(shè)計(jì),但是這里我們關(guān)注的是特定類型的體系結(jié)構(gòu),它與其他選擇有些不同,并且與人工智能相關(guān)。在諸如CPU或GPU的時(shí)鐘體系結(jié)構(gòu)中,每個(gè)時(shí)鐘周期從寄存器加載數(shù)據(jù)元素,將數(shù)據(jù)移動(dòng)到處理元件,等待操作完成,然后將結(jié)果存儲(chǔ)回寄存器以進(jìn)行下一個(gè)操作。在空間數(shù)據(jù)流中,操作在處理器上物理連接,以便一旦計(jì)算結(jié)果就執(zhí)行下一個(gè)操作,并且結(jié)果不存儲(chǔ)在寄存器中。當(dāng)在處理元素本地的寄存器中包含它們自己的狀態(tài)的中等復(fù)雜單元以這種方式鏈接在一起時(shí),我們將其稱為“Systolic Arrays”。

功耗、延遲和吞吐量

有一些直接的優(yōu)勢(shì)很容易實(shí)現(xiàn)。在基于寄存器的處理器中,功耗主要是由寄存器之間的數(shù)據(jù)存儲(chǔ)和傳輸造成的。其中唯一消耗的能量是處理元素,并將數(shù)據(jù)傳輸?shù)较乱浑A段。另一個(gè)主要優(yōu)點(diǎn)是元素之間的延遲,這不再局限于時(shí)鐘周期。在吞吐量方面也有一些潛在的優(yōu)勢(shì),因?yàn)閿?shù)據(jù)可以以最慢處理階段限制的速率被時(shí)鐘發(fā)送到Systolic Arrays中。數(shù)據(jù)以相同的速率在另一端輸出,其間存在一些延遲,從而建立數(shù)據(jù)流。與同步時(shí)鐘 - 執(zhí)行 - 存儲(chǔ)循環(huán)相比,這可以是更高能效和/或更快的數(shù)量級(jí),這取決于架構(gòu)的目標(biāo)。

數(shù)據(jù)流設(shè)計(jì)

如果說CPU是最容易編程的,并且GPU提出了更大的挑戰(zhàn),那么FPGA需要非常大的努力和大量的技能,而ASIC則需要更大量的成本和工程投資。盡管如此,特定算法的好處仍然很大。

要想知道這有多大的優(yōu)勢(shì),可以考慮在現(xiàn)代硅工藝中驅(qū)動(dòng)另一個(gè)逆變器的“標(biāo)準(zhǔn)化延遲”以單皮秒為單位測(cè)量,而時(shí)鐘周期接近納秒。類似地,傳輸能量是電阻電容的函數(shù),其可以根據(jù)互連的長度來計(jì)算,并且處理元件之間的距離可以比到在時(shí)鐘周期之間保持?jǐn)?shù)據(jù)的寄存器的距離短幾個(gè)數(shù)量級(jí)。FPGA沒有太大的優(yōu)勢(shì),因?yàn)樵g存在額外的扇出,切換和傳輸延遲,但它提供了靈活性,可以通過一個(gè)芯片適應(yīng)多種數(shù)據(jù)流架構(gòu)。雖然可以實(shí)現(xiàn)任何類型的算法,但是復(fù)雜性存在限制,因?yàn)闂l件需要兩個(gè)分支的布局,這大大增加了面積并降低了利用效率。FPGA和ASICS還可以采用同步和收縮結(jié)構(gòu)的混合來優(yōu)化布局效率和速度之間的權(quán)衡。

數(shù)據(jù)流系統(tǒng)

用于AI實(shí)現(xiàn)的最常見的systolic array 類型是張量核心,它作為TPU或GPU的一部分集成到同步體系結(jié)構(gòu)中。還提出了許多不同類型的卷積核心。已經(jīng)在FPGA系統(tǒng)中實(shí)現(xiàn)了整個(gè)深度學(xué)習(xí)架構(gòu)(如ResNet-50)的完整數(shù)據(jù)流實(shí)現(xiàn),從而在延遲和功耗效率方面實(shí)現(xiàn)了最先進(jìn)的性能。可定制性還允許任意位長精度,這會(huì)減小布局大小和處理延遲,但必須仔細(xì)調(diào)整以適應(yīng)系統(tǒng)的統(tǒng)計(jì)性能要求。然而,主要的獨(dú)特功能是處理的實(shí)時(shí)性質(zhì)允許AI與實(shí)時(shí)系統(tǒng)中的其他信號(hào)處理組件集成。

結(jié)論

在為特定系統(tǒng)選擇AI處理器時(shí),了解每種算法在所用算法的上下文中的相對(duì)優(yōu)勢(shì)以及系統(tǒng)要求和性能目標(biāo)非常重要。在后面的章節(jié)中,我們將介紹一些注意事項(xiàng)和示例。我們將看到這些處理器體系結(jié)構(gòu)中的每一個(gè)在各種系統(tǒng)級(jí)考慮因素中都比其他處理器體系結(jié)構(gòu)更具優(yōu)勢(shì)。

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

    關(guān)注

    8

    文章

    6774

    瀏覽量

    88661
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    2955

    瀏覽量

    73762
  • AI處理器
    +關(guān)注

    關(guān)注

    0

    文章

    92

    瀏覽量

    9456
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    國產(chǎn)新型AI PC處理器亮相上海

    處理器
    北京中科同志科技股份有限公司
    發(fā)布于 :2024年08月01日 09:21:01

    ARM處理器及ARM處理器工作模式

    ARM處理器狀態(tài)ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時(shí)處理器執(zhí)行32位的字對(duì)齊的ARM指令;第二種為Thumb狀態(tài),此時(shí)處理器執(zhí)行16位的
    發(fā)表于 01-27 11:13

    低功耗DRP-AI動(dòng)態(tài)可配置處理器有哪些關(guān)鍵特性呢

    低功耗DRP-AI動(dòng)態(tài)可配置處理器有哪些關(guān)鍵特性呢?
    發(fā)表于 11-08 09:16

    關(guān)于處理器的寄存定義

    本文來源其他網(wǎng)站。^_^一:關(guān)于處理器的寄存定義針對(duì)處理器的寄存定義文件是一個(gè)匯編文件,包含特定器件上所有特殊功能寄存
    發(fā)表于 11-24 06:43

    關(guān)于串口組以及協(xié)處理器如何加載的問題

    ,所屬USB始終被劃入dialout組,進(jìn)而造成在make upload 時(shí)無法找到相應(yīng)設(shè)備。 如何解決? 2。關(guān)于協(xié)處理器nice接口,現(xiàn)在已經(jīng)有了一個(gè)硬件功能模塊,但是不知道如何通過nice接口進(jìn)行
    發(fā)表于 08-16 08:05

    處理器關(guān)于多核概念與區(qū)別 多核處理器工作原理及優(yōu)缺點(diǎn)

    摘要:目前關(guān)于處理器的單核、雙核和多核已經(jīng)得到了普遍的運(yùn)用,今天我們主要說說關(guān)于多核處理器的一些相關(guān)概念,它的工作與那里以及優(yōu)缺點(diǎn)而展開的分
    發(fā)表于 12-08 13:31 ?3.1w次閱讀

    驍龍AI處理器已推出三代 提升手機(jī)AI體驗(yàn)

    AI已經(jīng)深入到社會(huì)經(jīng)濟(jì)的很多領(lǐng)域,尤其進(jìn)來在手機(jī)行業(yè)掀起了一股AI的狂潮。很多智能手機(jī)搭載了AI處理器,經(jīng)具備了AI的功能和應(yīng)用。當(dāng)前小米、
    發(fā)表于 06-28 06:32 ?923次閱讀

    高通推出三款驍龍處理器 支持廣泛終端AI用例

    日前,高通宣布推出驍龍632處理器、439處理器和429處理器。這三款處理器可以支持廣泛的終端側(cè)AI用例,在
    發(fā)表于 07-10 11:20 ?1027次閱讀

    三星全新AI功能的處理器芯片或命名為Mind Processor

    據(jù)國外消息報(bào)道,三星電子近日向韓國知識(shí)產(chǎn)權(quán)局提交了一項(xiàng)全新的電視處理器商標(biāo)申請(qǐng),名為“Mind Processor”。從命名上看,這顯然是一顆具有全新AI功能的處理器芯片,或?qū)⑦M(jìn)一步升級(jí)三星電視的音畫效果和
    的頭像 發(fā)表于 09-12 13:01 ?1523次閱讀

    Intel宣布48核心96線程處理器 將用于高性能計(jì)算和AI相關(guān)負(fù)載等領(lǐng)域

    本周,Intel舉辦了Supercomputing 2018活動(dòng),并宣布了Cascade Lake advanced performance(Cascade Lake-AP)處理器,用于高性能計(jì)算、AI相關(guān)負(fù)載等領(lǐng)域。
    發(fā)表于 11-12 15:35 ?1010次閱讀

    智能手機(jī)的AI處理器能做些什么

    三年前,AI成為了智能手機(jī)的新賣點(diǎn)。一時(shí)間,支持AI特性的智能手機(jī)快速普及,AI性能表現(xiàn)成為了繼CPU、GPU之后,消費(fèi)者最為關(guān)注的手機(jī)處理器參數(shù)。如今,展示
    的頭像 發(fā)表于 01-17 15:07 ?6390次閱讀

    關(guān)于選擇處理器的八個(gè)認(rèn)知錯(cuò)誤

     我們購買電腦,往往會(huì)關(guān)心處理器的性能好壞,處理器的性能好壞直接影響了電腦的運(yùn)算速度,我們可以將處理器比喻成大腦,是計(jì)算機(jī)的核心,決定了電腦速度好壞。那么如何選購處理器呢?今天小編分享
    發(fā)表于 05-20 09:23 ?784次閱讀

    八核處理器是什么意思

    八核處理器是什么意思?處理器是一臺(tái)電腦的大腦,它的性能直接影響著整體電腦的性能。大家對(duì)處理器了解多少,知道八核處理器是什么嗎,下面小編給大家科普
    發(fā)表于 05-23 09:38 ?1.8w次閱讀

    應(yīng)用處理器芯片行業(yè)科普

    APU市場(chǎng)概述APU(應(yīng)用處理器)概述APU定義APU(Application Processor Unit),又名應(yīng)用處理器芯片,是在低功耗中央處理器的基礎(chǔ)上擴(kuò)展音...
    發(fā)表于 01-25 19:55 ?1次下載
    應(yīng)用<b class='flag-5'>處理器</b>芯片行業(yè)<b class='flag-5'>科普</b>

    英特爾酷睿Ultra處理器突破500個(gè)AI模型優(yōu)化

    英特爾在最新推出的英特爾? 酷睿? Ultra處理器上宣布,超過500款AI模型已得到優(yōu)化運(yùn)行。這款處理器無疑是市場(chǎng)上領(lǐng)先的AI PC處理器
    的頭像 發(fā)表于 05-09 11:18 ?689次閱讀