什么是“存內(nèi)計(jì)算”,為什么它對人工智能很重要?
如果您正在運(yùn)行 AI 工作負(fù)載,這里有一些可能會(huì)讓您感到驚訝的事情。您的處理器在洗牌數(shù)據(jù)上浪費(fèi)的精力比實(shí)際進(jìn)行您關(guān)心的計(jì)算要多。這種低效率正在成為下一代人工智能系統(tǒng)的嚴(yán)重限制。隨著神經(jīng)網(wǎng)絡(luò)增長到數(shù)十億個(gè)參數(shù),傳統(tǒng)的馮·諾依曼架構(gòu)正在遇到物理障礙。
本文介紹什么是內(nèi)存計(jì)算 (CIM) 技術(shù)及其工作原理。我們將研究與傳統(tǒng)處理器相比,當(dāng)前的實(shí)現(xiàn)如何顯著提高效率。我們還將探討為什么這種新方法可以改變人工智能計(jì)算。
傳統(tǒng)計(jì)算機(jī)的挑戰(zhàn)
傳統(tǒng)計(jì)算機(jī)將計(jì)算單元和內(nèi)存系統(tǒng)分開。他們通過能源密集型傳輸不斷交換數(shù)據(jù)。Terasys、IRAM 和 FlexRAM 等早期提案出現(xiàn)在 1990 年代。然而,這些最初的嘗試有重大局限性。當(dāng)時(shí)的CMOS技術(shù)還不夠先進(jìn)。應(yīng)用需求也不同。
傳統(tǒng)的馮·諾依曼架構(gòu)(圖1a)在中央處理器和存儲(chǔ)器之間保持了嚴(yán)格的分離。這種方法需要通過帶寬受限的總線進(jìn)行持續(xù)的數(shù)據(jù)傳輸。這種分離會(huì)產(chǎn)生“內(nèi)存墻”問題,這尤其會(huì)損害 AI 工作負(fù)載。
圖 1.計(jì)算架構(gòu)從 (a) CPU 和內(nèi)存分離的傳統(tǒng)馮諾依曼,到 (b) 近內(nèi)存計(jì)算,再到使用 (c) 基于 SRAM 和 (d) 基于 eNVM 的實(shí)現(xiàn)的真正的內(nèi)存計(jì)算方法。(圖片來源:IEEE)
CIM(也稱為存內(nèi)處理)與幾十年來主導(dǎo)計(jì)算的傳統(tǒng)馮·諾依曼架構(gòu)截然不同。它直接在數(shù)據(jù)存儲(chǔ)位置內(nèi)或非??拷鼣?shù)據(jù)存儲(chǔ)的位置執(zhí)行計(jì)算。
近內(nèi)存計(jì)算(圖 1b)使內(nèi)存更接近處理單元。真正的內(nèi)存計(jì)算方法(圖 1c 和 1d)的工作方式不同。它們將計(jì)算功能直接嵌入到內(nèi)存陣列中。存儲(chǔ)和邏輯單元的這種集成減少了數(shù)據(jù)移動(dòng)。這減少了延遲和能耗,這是現(xiàn)代 AI 應(yīng)用程序中的兩大瓶頸。
大數(shù)據(jù)和機(jī)器學(xué)習(xí)應(yīng)用的快速增長推動(dòng)了CIM的興起。這些應(yīng)用需要高計(jì)算效率。
技術(shù)實(shí)施方法
CIM 可以使用各種內(nèi)存技術(shù)來實(shí)現(xiàn),每種技術(shù)都為不同的 AI 工作負(fù)載提供獨(dú)特的優(yōu)勢。
靜態(tài)隨機(jī)存取存儲(chǔ)器 (SRAM) 已成為 CIM 實(shí)施最受歡迎的選擇。其速度、穩(wěn)健性以及與現(xiàn)有制造工藝的兼容性使其成為人工智能加速器的理想選擇。研究人員開發(fā)了改進(jìn)的SRAM比特單元結(jié)構(gòu),包括8T、9T和10T配置,以及輔助外圍電路以提高性能。
圖2說明了基于SRAM的CIM開發(fā)的綜合性。該圖顯示了電路級創(chuàng)新如何實(shí)現(xiàn)復(fù)雜的計(jì)算功能和實(shí)際的人工智能應(yīng)用。在電路級別(圖2a),基于SRAM的CIM需要專門的比特單元結(jié)構(gòu)和外圍電路。其中包括模數(shù)轉(zhuǎn)換器、時(shí)間控制系統(tǒng)和冗余參考列。這些電路創(chuàng)新實(shí)現(xiàn)了一系列功能(圖 2b)。
圖 2.基于SRAM的內(nèi)存計(jì)算的完整框架,顯示了從(a)使用比特單元結(jié)構(gòu)和外圍電路的電路級實(shí)現(xiàn),到(b)包括數(shù)字和混合信號(hào)作在內(nèi)的功能能力,再到(c)實(shí)際的人工智能應(yīng)用,如CNN、AES加密和分類算法。(圖片:研究)
數(shù)字運(yùn)算包括布爾邏輯和內(nèi)容可尋址內(nèi)存。混合信號(hào)運(yùn)算支持乘法累加和絕對差值計(jì)算之和,這是神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)。
如應(yīng)用層所示(圖 2c),這些技術(shù)能力轉(zhuǎn)化為加速的 AI 算法。其中包括用于圖像分類的卷積神經(jīng)網(wǎng)絡(luò)、用于安全應(yīng)用的 AES 加密以及用于模式識(shí)別的 k 最近鄰算法。然而,SRAM面臨著低密度和高漏電流等挑戰(zhàn),限制了其在大型AI處理器中的可擴(kuò)展性。
動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器 (DRAM) 雖然由于其刷新要求而在直接內(nèi)存計(jì)算中不太常見,但在近內(nèi)存處理架構(gòu)中發(fā)揮著核心作用。高帶寬內(nèi)存和混合內(nèi)存立方體等技術(shù)利用 3D 堆疊來減少計(jì)算和內(nèi)存之間的物理距離。
電阻式隨機(jī)存取存儲(chǔ)器(ReRAM)是CIM最有前景的新技術(shù)。這種非易失性存儲(chǔ)器有幾個(gè)優(yōu)點(diǎn)。它具有高密度,并且與后端制造工藝配合良好。它也非常適合矩陣-向量乘法運(yùn)算。這些作是神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)。
CIM 實(shí)現(xiàn)的計(jì)算領(lǐng)域也各不相同。模擬CIM利用存儲(chǔ)單元的物理特性來執(zhí)行作。它通過電流求和和電荷收集來工作。這提供了更高的重量密度,但可能會(huì)出現(xiàn)噪音問題。數(shù)字CIM以每比特一個(gè)器件提供高精度?;旌闲盘?hào)方法試圖平衡模擬和數(shù)字方法的優(yōu)勢。
AI 應(yīng)用程序的變革性優(yōu)勢
CIM for AI 的實(shí)際好處是可衡量的,也是引人注目的,如圖 3 所示。能效比較揭示了 CIM 架構(gòu)在不同技術(shù)節(jié)點(diǎn)上的優(yōu)勢。傳統(tǒng) CPU 僅能達(dá)到 0.01-0.1 TOPS/W(每秒每瓦特萬億次運(yùn)算),而數(shù)字內(nèi)存架構(gòu)可提供 1-100 TOPS/W,代表著能源效率提高了 100 到 1000 倍。先進(jìn)的 CIM 方法(如硅光子學(xué)和光學(xué)系統(tǒng))將效率推向更高。
圖 3.不同處理器類型的技術(shù)節(jié)點(diǎn)能效比較(左)和能耗明細(xì)(右)。(圖片來源:ResearchGate)
能量擊穿分析(圖 3,右)揭示了 CIM 有效的原因。傳統(tǒng) CPU 以內(nèi)存訪問能量(藍(lán)條)為主,而 CIM 架構(gòu)通過直接在內(nèi)存中執(zhí)行計(jì)算來減少這一瓶頸。這一基本優(yōu)勢轉(zhuǎn)化為人工智能應(yīng)用程序中可衡量的性能改進(jìn)。
表 1 所示的最新實(shí)現(xiàn)證明了 CIM 對 Transformer 和 LLM 加速的實(shí)際影響。與 NVIDIA GPU 相比,各種 CIM 架構(gòu)都實(shí)現(xiàn)了性能改進(jìn),加速幅度從 2.3 倍到 200 倍不等。能效增益高達(dá) 1894 倍。這些結(jié)果涵蓋了多個(gè) Transformer 模型,包括 BERT、GPT 和 RoBERTa,展示了 CIM 對現(xiàn)代語言模型的廣泛適用性。
表 1.比較用于 Transformer 和 LLM 基準(zhǔn)測試的各種 CIM 架構(gòu),顯示在不同型號(hào)和內(nèi)存技術(shù)中比 NVIDIA GPU 具有顯著的加速和效率提升。(圖片來源:arXiv)
總結(jié)
隨著我們進(jìn)入后摩爾定律時(shí)代,CIM 代表了一場重大的架構(gòu)轉(zhuǎn)變,解決了人工智能計(jì)算中的關(guān)鍵挑戰(zhàn)。該技術(shù)正在迅速發(fā)展,基于 SRAM 的解決方案接近商業(yè)可行性,新興的非易失性存儲(chǔ)器解決方案顯示出未來應(yīng)用的潛力。隨著人工智能在技術(shù)應(yīng)用中的不斷擴(kuò)展,CIM 可能成為更高效人工智能部署的重要使能技術(shù)。
評論