In-memory computing(以下簡稱IMC)是一種古老而有爭議的組織計算機硬件的方式,以最大限度地減少能耗并提高性能,但除了在一些非常特定的應(yīng)用中,它從未真正進入主流。但邊緣計算AI的需求可能為這種架構(gòu)理念提供了機會。
IMC將計算元素放在內(nèi)存中而不是中央處理器中的概念在計算機科學(xué)的邊緣有很長的歷史。IMC是那些總是建立在合理推理基礎(chǔ)上的想法之一,而且非常有意義,甚至影響了計算機架構(gòu)的重大進步,但卻沒有以其純粹的形式突破主流。但現(xiàn)在,一種古老的錄音技術(shù)、邊緣計算的限制和深度學(xué)習(xí)網(wǎng)絡(luò)的內(nèi)部結(jié)構(gòu)的奇妙結(jié)合,可能會把IMC重新拉回聚光燈下。
一個古老的觀點
IMC的概念可以追溯到計算機的早期。計算機工程師們很快意識到,雖然馮諾依曼架構(gòu)(中央處理器從主存儲單元讀取指令和數(shù)據(jù))非常靈活并被普遍采用,但它的效率往往很低。重復(fù)地從內(nèi)存中獲取少量數(shù)據(jù),做一些簡單的計算,然后把結(jié)果放回內(nèi)存的算法,一遍又一遍地,花費大量的時間和精力獲取指令和移動數(shù)據(jù),但在實際計算上花費的時間和精力卻被壓縮了。由于從內(nèi)存中獲取一個單詞的時間和能量幾乎總是比CPU中的算術(shù)或邏輯成本大,這種低效很要命,特別是在像邊緣計算這樣的功耗受限的環(huán)境中。
一些架構(gòu)師采取了顯而易見的行動,為什么把它們?nèi)考性贑PU中,而不直接將簡單的計算元素構(gòu)建到內(nèi)存單元中呢?理論上,這將大大減少所有讀寫操作的時間延遲和功耗,并且可以繞過CPU不斷獲取和解碼指令的需要。
現(xiàn)實的阻礙
事實證明,不這么做有一些非常好的實際理由。賦予內(nèi)存計算元素什么樣的能力是至關(guān)重要的。將這些功能放在哪里,以及如何將它們連接到內(nèi)存陣列中也是如此。雖然通常有可能設(shè)計一個IMC架構(gòu),在一組很窄的算法上工作得很好,但你越試圖使架構(gòu)通用,你放棄的效率就越多。如果你只是在CPU上做了一些聰明的事,那么很快就會得到一個效率較低的架構(gòu)。
CPU架構(gòu)師很聰明。他們用另一種方法來解決所有這些讀寫的低效問題:緩存。然后是更多緩存,更多的緩存層。通過嘗試讓大多數(shù)讀寫操作發(fā)生在緩存而不是主內(nèi)存中,可以消除一些低效的問題(取決于緩存和相關(guān)算法)。
與此同時,主存儲正從一種高度專業(yè)化的手工制造產(chǎn)品變成一種商品。用戶越來越不愿意做任何迫使他們購買專用存儲芯片的事了。因此,IMC成了一種很難銷售的產(chǎn)品。但這并沒有阻止該領(lǐng)域的研究。今年的ISSCC會議有許多關(guān)于這個主題的論文,原因我們稍后將會看到。
IMC的機遇
有一種非常狹窄的算法可以從IMC中獲得巨大的收益,這是個巨大的商業(yè)領(lǐng)域:3D圖形渲染。著色(在3D模型的2D渲染中為像素添加色彩和亮度的過程)對3D模型中的每個點進行一些簡單的操作,反復(fù)進行。雖然著色算法有很多變體,但它們都非常相似,一個設(shè)計良好的架構(gòu)可以覆蓋很多變體,這是一個成功的IMC應(yīng)用的處方。
我們知道這種思維的結(jié)果就是GPU。雖然通常不這樣描述,但GPU實際上是一個巨大的內(nèi)存芯片,它有專門的處理器(著色引擎)明智地分散在內(nèi)存塊中。這種架構(gòu)不僅主導(dǎo)了3D圖形渲染,而且通用GPU和CUDA等并行編程語言的出現(xiàn)也顯示了這種架構(gòu)對更廣泛的并行化問題的適應(yīng)性。
進入AI
其中一類可并行化的問題是AI的一個分支:深度學(xué)習(xí)網(wǎng)絡(luò)。當(dāng)你訓(xùn)練或使用深度學(xué)習(xí)網(wǎng)絡(luò)時,里面發(fā)生的只是我們一直在討論的那種大規(guī)模、有序的簡單計算陣列。在訓(xùn)練過程中,你將輸入和正確的答案輸入到模型中,并進行大量的簡單計算,將答案通過網(wǎng)絡(luò)的各層向輸入傳播,同時細(xì)化稱為激活權(quán)重的巨大參數(shù)表。一旦訓(xùn)練好網(wǎng)絡(luò),你就把輸入信息應(yīng)用到模型中,做一系列矩陣乘法(同樣是簡單操作的有序集合,在網(wǎng)絡(luò)的末端彈出一個答案,一個推理)。
通過對內(nèi)存非常仔細(xì)的安排和精心編程,這個過程對GPU來說是小菜一碟。因此,GPU在深度學(xué)習(xí)中無處不在。但是GPU雖然對優(yōu)秀的軟件非常有效,但在推理計算方面卻沒有理想的效率。這一事實導(dǎo)致了大量的研究論文和初創(chuàng)公司設(shè)計更適合深度學(xué)習(xí)加速,特別是為推理加速設(shè)計的加速器芯片。這種架構(gòu)有很多,但大多數(shù)都有一個共同的想法:使用大量的小型計算元素來并行處理深度學(xué)習(xí)的大量計算負(fù)載,并將這些元素放置在非??拷蛭挥趦?nèi)存中的位置。
Syntiant和Untether等初創(chuàng)公司也屬于非常接近的一類。這類公司似乎更喜歡“at-memory computing(以下簡稱為AMC)”這個短語,而不是更傳統(tǒng)的術(shù)語,可能是因為他們沒有把計算元素放在內(nèi)存陣列中,而是放在芯片的旁邊。但還有另外一類。
模擬域
這就是那個奇怪結(jié)合的地方(一個模擬推理加速器),我們分三步討論。首先,深度學(xué)習(xí)網(wǎng)絡(luò)有一個奇怪的特性:大多數(shù)網(wǎng)絡(luò)在內(nèi)部計算中幾乎不受微小誤差的影響。在幾乎所有的有序算術(shù)中,無論你用32位、8位,甚至有時是4位來表示數(shù)字,對所產(chǎn)生的推理的準(zhǔn)確性都沒有什么區(qū)別。在這些計算中,傳統(tǒng)GPU中的大部分內(nèi)存和數(shù)據(jù)路徑位都被浪費了。
其次,工程師們很久以前就發(fā)現(xiàn),閃存單元不僅可以存儲數(shù)字位,還可以存儲模擬數(shù)據(jù):例如,足以產(chǎn)生可接受的語音記錄。這一發(fā)現(xiàn)為多級閃存的工作奠定了基礎(chǔ)。因此,在原則上,模擬閃存可以存儲深度學(xué)習(xí)網(wǎng)絡(luò)的低精度激活權(quán)重,而不放棄推理的準(zhǔn)確性。
第三,由于閃存陣列的組織方式,你可以讓閃存陣列在一個周期內(nèi)計算乘積的模擬和乘積,這是矩陣算術(shù)和推理計算的基本操作,只需要很少的能量。這對于將激活權(quán)重(只在訓(xùn)練期間改變)作為模擬值存儲在閃存單元中,然后一次性讀出整個輸入乘以權(quán)重并相加的集合來說,是非常好的。整個過程功耗非常小。
把這三個部分放在一起,你就有了一個非???、非常高效的模擬推理加速器背后的想法。這種設(shè)計消除了數(shù)字設(shè)計的大部分內(nèi)存和大多數(shù)處理元素,而是在閃存陣列中進行模擬乘積。Axelera、Mythic和TetraMem等初創(chuàng)公司正在使用這種方法開發(fā)芯片或IP,并瞄準(zhǔn)了對功耗要求嚴(yán)苛的邊緣計算領(lǐng)域。
但是在模擬電路中存在著固有的挑戰(zhàn),以至于許多年來大多數(shù)模擬電路設(shè)計已經(jīng)被數(shù)字方法所取代。模擬信號會被噪聲破壞。模擬內(nèi)存會隨著時間的推移而損耗。模擬電路往往是專用的,而且很難從一種工藝擴展到下一種。這些問題會再次導(dǎo)致模擬應(yīng)用被其數(shù)字競爭對手超越嗎?
這一次可能會有所不同。在邊緣計算中,以極低的功耗進行大規(guī)模、快速推理的能力是非常大的優(yōu)勢。隨著芯片從14nm擴展到10nm、5nm及以上,不斷上升的成本、巨大的設(shè)計挑戰(zhàn)和日益增長的供應(yīng)鏈擔(dān)憂,使得僅僅遵循摩爾定律的數(shù)字工藝讓模擬方法被淘汰的說法沒那么肯定了。
ARM和IBM的研究人員最近聯(lián)合發(fā)表的一篇論文表明,一些非常重要的玩家正在認(rèn)真對待這項技術(shù)的長期發(fā)展。該論文介紹了一種14nm模擬IMC芯片,該芯片直接解決了該技術(shù)的噪聲和內(nèi)存漂移問題。
似乎可以肯定的是,更多的IMC和AMC的例子將出現(xiàn)在邊緣計算應(yīng)用中,無論具體的實現(xiàn)是模擬還是數(shù)字。除了在這些環(huán)境中GPU已經(jīng)霸占的領(lǐng)域之外,這種方法是否會過渡到云數(shù)據(jù)中心或超級計算機,仍然是一個開放和非常有趣的問題。
審核編輯 :李倩
-
cpu
+關(guān)注
關(guān)注
68文章
11031瀏覽量
215931 -
中央處理器
+關(guān)注
關(guān)注
1文章
126瀏覽量
16773 -
IMC
+關(guān)注
關(guān)注
0文章
26瀏覽量
4813
原文標(biāo)題:IMC為什么會回歸?
文章出處:【微信號:Astroys,微信公眾號:Astroys】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
地平線CEO余凱:智能駕駛應(yīng)回歸理性
銅線鍵合IMC生長分析

藍(lán)牙技術(shù)聯(lián)盟宣布2025藍(lán)牙亞洲大會重磅回歸
藍(lán)牙技術(shù)聯(lián)盟宣布2025藍(lán)牙亞洲大會重磅回歸

基于移動自回歸的時序擴散預(yù)測模型

垂直型回歸反射光電開關(guān)的原理有哪些E3S-AR61
TetraMem將IMC技術(shù)與Andes晶心科技RISC-V CPU向量整合
基于RK3568國產(chǎn)處理器教學(xué)實驗箱操作案例分享:一元線性回歸實驗
Minitab常用功能介紹 如何在 Minitab 中進行回歸分析
IMC到底是越厚越好?還是越薄越好

評論