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

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

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

FPGA和ASIC在大模型推理加速中的應(yīng)用

傅里葉的貓 ? 來源:傅里葉的貓 ? 2024-10-29 14:12 ? 次閱讀

今天我們再來看一篇論文。

隨著現(xiàn)在AI的快速發(fā)展,使用FPGAASIC進(jìn)行推理加速的研究也越來越多,從目前的市場來說,有些公司已經(jīng)有了專門做推理的ASIC,像Groq的LPU,專門針對大語言模型的推理做了優(yōu)化,因此相比GPU這種通過計算平臺,功耗更低、延遲更小,但應(yīng)用場景比較單一,在圖像/視頻方向就沒有優(yōu)勢了。

整個AI的工業(yè)界,使用FPGA的目前還比較少,但學(xué)術(shù)界其實一直在用FPGA做很多的嘗試,比如通過簡化矩陣運算,使FPGA可以更好的發(fā)揮其優(yōu)勢。

今天看的這篇論文,是一篇關(guān)于FPGA和ASIC在大模型推理加速和優(yōu)化方向的綜述,我們看下目前的研究進(jìn)展。

Introduction

Transformer模型在自然語言處理(NLP)、計算機視覺語音識別等多個領(lǐng)域都取得了顯著的成就。特別是,這些模型在機器翻譯、文本分類、圖像分類和目標(biāo)檢測等任務(wù)中表現(xiàn)出色。Transformer模型需要比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(如循環(huán)神經(jīng)網(wǎng)絡(luò)、長短期記憶網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò))更多的參數(shù)和計算操作。例如,Transformer-B模型包含1.1億參數(shù),執(zhí)行21.78億次浮點運算,而Vision Transformer (ViT)-B模型包含8600萬參數(shù),執(zhí)行16.85億次浮點運算。

GPU的局限性

盡管GPU在加速大型深度學(xué)習(xí)模型方面發(fā)揮了主要作用,但它們的高功耗限制了在邊緣環(huán)境中的適用性。因此,大多數(shù)大型深度學(xué)習(xí)模型在GPU服務(wù)器環(huán)境中處理,給數(shù)據(jù)中心帶來了沉重的負(fù)擔(dān)。

FPGA和ASIC的優(yōu)勢

FPGA和ASIC在并行處理、設(shè)計靈活性和功耗效率方面具有優(yōu)勢,被用作各種深度學(xué)習(xí)模型的專用加速平臺。通過壓縮和設(shè)計優(yōu)化技術(shù),可以優(yōu)化FPGA和ASIC上的加速器性能,如吞吐量和功耗效率。

該論文對FPGA和ASIC基于Transformer的加速器的最新發(fā)展進(jìn)行全面回顧,探索適合于FPGA/ASIC的模型壓縮技術(shù),以及對最新的FPGA和ASIC加速器的性能進(jìn)行比較。

研究背景

論文中這部分內(nèi)容比較長,對Transformer模型和Vision Transformer (ViT)模型的進(jìn)行了詳細(xì)介紹,包括它們的基本組件、不同的模型變體以及它們在計算上的特點,包含了很多理論部分,有興趣的讀者可以看原文,我只總結(jié)一下大概的內(nèi)容。

Transformer模型主要由編碼器(Encoder)和解碼器(Decoder)組成。編碼器處理輸入序列生成上下文向量,而解碼器使用編碼器的上下文向量和前一步的輸出標(biāo)記來生成下一步的標(biāo)記。編碼器和解碼器的核心操作模塊包括多頭自注意力(MHSA)和前饋網(wǎng)絡(luò)(FFN)。通過MHSA,Transformer能夠訓(xùn)練 token 之間的全局上下文信息,從而實現(xiàn)高精度?;赥ransformer架構(gòu)的也有不同的模型,如BERT、GPT等,他們的預(yù)訓(xùn)練和微調(diào)方法也均有不同。這些模型在不同的NLP任務(wù)中表現(xiàn)出色,但大型模型如GPT-3由于參數(shù)眾多,難以在FPGA或ASIC上實現(xiàn)。

Vision Transformer (ViT)是針對計算機視覺任務(wù)提出的Transformer模型,主要用于圖像分類。與原始Transformer架構(gòu)不同,ViT只使用編碼器,并且在編碼器之前進(jìn)行LayerNorm操作。ViT通過將輸入圖像分割成固定大小的patches,然后通過線性投影生成Transformer輸入tokens。ViT的編碼器操作和圖像分類任務(wù)的執(zhí)行方式也有詳細(xì)說明?;赩iT架構(gòu)也有多種模型變體,如DeiT、Swin Transformer和TNT,這些模型通過不同的方式改進(jìn)了ViT,例如通過知識蒸餾、層次結(jié)構(gòu)和窗口機制、以及改進(jìn)的patch嵌入方法來提高性能。

Transformer模型壓縮

要想在FPGA/ASIC上應(yīng)用Transformer,肯定需要對模型進(jìn)行改進(jìn),要讓算法硬件實現(xiàn)更加的友好。目前有常用的方式:

量化(Quantization)

量化是將模型的參數(shù)和激活值從通常的32位浮點數(shù)轉(zhuǎn)換為低精度數(shù)據(jù)格式(如INT8或INT4)的過程。這樣做可以有效減少內(nèi)存需求,同時加快計算速度并降低功耗。比如線性量化的過程,并通過量化感知訓(xùn)練(QAT)或后訓(xùn)練量化(PTQ)來恢復(fù)因量化而可能損失的準(zhǔn)確性。還可以通過優(yōu)化權(quán)重和激活值的量化策略來實現(xiàn)高壓縮比和最小的準(zhǔn)確性損失。

剪枝(Pruning)

剪枝是通過識別并移除模型中不重要的參數(shù)來減少模型大小的方法。剪枝可以基于不同的粒度,如細(xì)粒度、標(biāo)記剪枝、頭部剪枝和塊剪枝。結(jié)構(gòu)化剪枝(如標(biāo)記、頭部和塊剪枝)會改變模型結(jié)構(gòu),而無結(jié)構(gòu)化剪枝(如細(xì)粒度剪枝)則保留了模型結(jié)構(gòu),但可能導(dǎo)致內(nèi)存利用效率低下。合理的Pruning可以在內(nèi)存效率和準(zhǔn)確性之間找到平衡點來實現(xiàn)SOTA性能。

硬件友好的全整數(shù)算法(Hardware-friendly fully-integer algorithm)

Transformer模型中的非線性操作(如Softmax和GeLU)需要高精度的浮點運算,這在FPGA或ASIC硬件上難以高效實現(xiàn)。為了解決這個問題,研究者們提出了一些近似算法和量化技術(shù),以便在硬件上以整數(shù)形式處理這些非線性函數(shù),從而減少對浮點運算的需求。

硬件加速器設(shè)計優(yōu)化

在這一節(jié),論文中詳細(xì)探討了針對FPGA和ASIC平臺的Transformer模型加速器的各種優(yōu)化技術(shù)。其實這一節(jié)的內(nèi)容跟上一節(jié)是一個道理,都是在講如何讓大模型算法更好的適應(yīng)FPGA/ASIC的平臺。論文中也是花了很大的篇幅對每一個優(yōu)化方法做了詳細(xì)分析,這里我也只是總結(jié)一下論文中使用到的優(yōu)化方法,具體的內(nèi)容還是建議有興趣的讀者看原文。

稀疏性(Sparsity)

計算優(yōu)化(Computing Optimization)

內(nèi)存優(yōu)化(Memory Optimization)

硬件資源優(yōu)化(Hardware Resource Optimization)

芯片面積優(yōu)化(Chip Area Optimization)

軟硬件協(xié)同設(shè)計(Hardware-Software Co-design)

這些優(yōu)化技術(shù)都可以幫助提高加速器的性能,降低功耗,并實現(xiàn)更高效的Transformer模型推理。

性能比較

這一部分主要是對基于FPGA和ASIC的Transformer加速器的性能進(jìn)行了分析和比較。

FPGA加速器性能比較

下面這個表,展示了不同的加速器模型使用在數(shù)據(jù)格式、工作頻率、功耗、吞吐量(GOPS)、推理速度(FPS)以及所使用的FPGA資源(如DSP、LUT、FF和BRAM)的統(tǒng)計。

1080ac7c-95a6-11ef-a511-92fbcf53809c.png

對于基于FPGA的加速器,分析的這些指標(biāo)都是FPGA芯片的關(guān)鍵資源。

可以看到,這些模型其實都有各自的優(yōu)勢和劣勢,某些設(shè)計可能在吞吐量上有優(yōu)勢,而其他設(shè)計可能在能效比或推理速度上有優(yōu)勢。

ASIC加速器性能比較

下面這個表是不同模式在數(shù)據(jù)格式、工作頻率、制造工藝、芯片面積、功耗、吞吐量以及片上內(nèi)存大小的統(tǒng)計。

1085f0b0-95a6-11ef-a511-92fbcf53809c.png

對于ASIC加速器,性能比較則側(cè)重于諸如芯片面積和技術(shù)節(jié)點等ASIC設(shè)計的關(guān)鍵指標(biāo)。這些因素影響著ASIC芯片的成本、能耗以及計算效率。

Further work

在前面的幾節(jié)中,論文中調(diào)研了不同模型在FPGA/ASIC上的性能比較,本節(jié)作者提出了當(dāng)前FPGA和ASIC基Transformer加速器研究的一些潛在方向和未來趨勢。

復(fù)雜任務(wù)的加速器

除了傳統(tǒng)的分類任務(wù)外,檢測和分割等更復(fù)雜的任務(wù)對計算能力的要求更高。學(xué)術(shù)界正在探索如何通過剪枝和優(yōu)化來降低這些任務(wù)所需的能量消耗。

異構(gòu)計算平臺

異構(gòu)平臺也是目前非?;鸬囊粋€方向,如何將CPU、GPU、FPGA和ASIC集成到一個平臺上,以利用每種處理器的優(yōu)勢。這種異構(gòu)架構(gòu)可以提高吞吐量,降低延遲,并提高能源效率。

混合網(wǎng)絡(luò)性能提升

結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(CNN)和Transformer的混合網(wǎng)絡(luò)正在受到關(guān)注。

調(diào)度算法和通信協(xié)議

為了充分利用異構(gòu)計算平臺的潛力,需要開發(fā)高效的調(diào)度算法和通信協(xié)議,優(yōu)化處理器之間的數(shù)據(jù)流,減少瓶頸,提高整體性能。

硬件-軟件協(xié)同設(shè)計

軟硬件協(xié)同設(shè)計方法可以進(jìn)一步優(yōu)化Transformer模型的加速。通過迭代模擬和優(yōu)化,可以找到最佳的硬件和軟件配置,以實現(xiàn)最低的延遲和最高的能效。

新應(yīng)用和模型的開發(fā)

隨著新技術(shù)的發(fā)展,如擴散模型和LLM,需要開發(fā)新的應(yīng)用和模型來利用這些技術(shù)。這可能涉及到開發(fā)新的硬件加速器,以支持這些模型的特定計算需求。

其實論文中講了這么多,我最關(guān)心的還是商業(yè)的部署,GPU的功耗就決定了它的應(yīng)用場景不會特別廣,像邊緣計算設(shè)備,基本告別那種大功耗的GPU,F(xiàn)PGA/ASIC在這方面就會顯得有優(yōu)勢。但目前來看,除了上面提到的LPU,現(xiàn)在ASIC已經(jīng)在很多場景使用用于做一些“小模型”的推理任務(wù),像現(xiàn)在比較火的AI PC,AI手機,都是在端側(cè)運行參數(shù)量較小的大模型,但FPGA在AI 端側(cè)的應(yīng)用還任重而道遠(yuǎn)。

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

    關(guān)注

    1624

    文章

    21616

    瀏覽量

    601118
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1182

    瀏覽量

    120214
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    29707

    瀏覽量

    268024
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5459

    瀏覽量

    120866
  • 大模型
    +關(guān)注

    關(guān)注

    2

    文章

    2262

    瀏覽量

    2341

原文標(biāo)題:FPGA/ASIC在AI推理加速中的研究

文章出處:【微信號:傅里葉的貓,微信公眾號:傅里葉的貓】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    GPU、FPGAASIC鏖戰(zhàn)AI推理

    深度學(xué)習(xí)的概念,通??梢院喕癁閮纱蠊ぷ髁?,一是訓(xùn)練,二是推理。兩者完美融合才是一個現(xiàn)代化的完整深度學(xué)習(xí)網(wǎng)絡(luò),缺一不可。訓(xùn)練用于調(diào)整神經(jīng)網(wǎng)絡(luò)模型的參數(shù),從而在給定的數(shù)據(jù)上實現(xiàn)良好的表
    的頭像 發(fā)表于 03-15 07:39 ?2594次閱讀

    到底什么是ASICFPGA?

    提供的門電路規(guī)模足夠大,通過編程,就能夠?qū)崿F(xiàn)任意ASIC的邏輯功能。 FPGA開發(fā)套件,中間那個是FPGA芯片 我們再看看FPGA的發(fā)展歷程。
    發(fā)表于 01-23 19:08

    #硬聲創(chuàng)作季 #ASIC 可編程ASIC設(shè)計-06.03設(shè)計模型FPGA上實現(xiàn)

    fpgaasicIC設(shè)計
    水管工
    發(fā)布于 :2022年09月25日 05:10:18

    好奇~!谷歌的 Edge TPU 專用 ASIC 旨在將機器學(xué)習(xí)推理能力引入邊緣設(shè)備

    的 Edge TPU 扮演著關(guān)鍵角色——這款專用 ASIC 旨在將機器學(xué)習(xí)推理能力引入邊緣設(shè)備。近一年之后,兩款產(chǎn)品以“Coral”的名號推出了“Beta 測試版”,且目前已經(jīng)可供感興趣的朋友購買。另外,這
    發(fā)表于 03-05 21:20

    深度學(xué)習(xí)推理和計算-通用AI核心

    商業(yè)發(fā)行之前就已經(jīng)過時了。算法明天需要對架構(gòu)、內(nèi)存/數(shù)據(jù)進(jìn)行徹底改革資源和能力。推理的夢幻建筑重新定義重寫在計算和交付突破性的人工智能加速和靈活的計算能力超越了服務(wù)器級CPU和比GPU/ASIC通用
    發(fā)表于 11-01 09:28

    FPGA能否繼續(xù)SoC類應(yīng)用替代ASIC?

    FPGA能否繼續(xù)SoC類應(yīng)用替代ASIC?CoreConsole工具是什么,有什么功能?
    發(fā)表于 04-08 06:23

    壓縮模型加速推理嗎?

    你好我使用 STM32CUBE-AI v5.1.2 ApplicationTemplate 將簡單的 CNN 導(dǎo)入到 STM32L462RCT我發(fā)現(xiàn)壓縮模型推理時間沒有影響。aiRun 程序 8
    發(fā)表于 01-29 06:24

    FPGAASIC/GPU NN實現(xiàn)進(jìn)行定性的比較

    不同模型的NPU,而不是硬編碼和只支持優(yōu)化特定模型的NPU。ASIC,加速特定NN算子的數(shù)字
    發(fā)表于 02-08 15:26

    AscendCL快速入門——模型推理篇(上)

    三步。 把經(jīng)過ATC轉(zhuǎn)化過的模型.om文件加載到內(nèi)存。 為模型準(zhǔn)備輸入輸出。 讓模型設(shè)備端執(zhí)行推理。 二、
    發(fā)表于 08-24 11:04

    HarmonyOS:使用MindSpore Lite引擎進(jìn)行模型推理

    使用 MindSpore Lite 推理引擎進(jìn)行模型推理的通用開發(fā)流程。 基本概念 進(jìn)行開發(fā)前,請先了解以下概念。 張量 :它與數(shù)組和矩陣非常相似,是 MindSpore Lite
    發(fā)表于 12-14 11:41

    FPGA_ASIC-MACFPGA的高效實現(xiàn)

    FPGA_ASIC-MACFPGA的高效實現(xiàn)(理士電源技術(shù)有限公司)-該文檔為FPGA_ASIC-MAC
    發(fā)表于 08-04 19:03 ?8次下載
    <b class='flag-5'>FPGA_ASIC</b>-MAC<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的高效實現(xiàn)

    如何對推理加速器進(jìn)行基準(zhǔn)測試

      客戶對基準(zhǔn)推理學(xué)習(xí)曲線的最后階段是開發(fā)自己的模型,使用通常來自 Nvidia 或數(shù)據(jù)中心的訓(xùn)練硬件/軟件,然后可能的目標(biāo)推理加速器上對
    的頭像 發(fā)表于 06-06 16:02 ?1259次閱讀

    如何加速大語言模型推理

    隨著人工智能技術(shù)的飛速發(fā)展,大語言模型(LLM)已成為自然語言處理領(lǐng)域的核心工具,廣泛應(yīng)用于智能客服、文本生成、機器翻譯等多個場景。然而,大語言模型的高計算復(fù)雜度和資源消耗成為其實際應(yīng)用
    的頭像 發(fā)表于 07-04 17:32 ?437次閱讀

    LLM大模型推理加速的關(guān)鍵技術(shù)

    LLM(大型語言模型)大模型推理加速是當(dāng)前人工智能領(lǐng)域的一個研究熱點,旨在提高模型處理復(fù)雜任務(wù)
    的頭像 發(fā)表于 07-24 11:38 ?712次閱讀

    FPGA加速深度學(xué)習(xí)模型的案例

    FPGA(現(xiàn)場可編程門陣列)加速深度學(xué)習(xí)模型是當(dāng)前硬件加速領(lǐng)域的一個熱門研究方向。以下是一些FPGA加速
    的頭像 發(fā)表于 10-25 09:22 ?95次閱讀