日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 智能硬件 > 人工智能AI
[導(dǎo)讀] 基于FPGA的通用CNN加速設(shè)計(jì),可以大大縮短FPGA開發(fā)周期,支持業(yè)務(wù)深度學(xué)習(xí)算法快速迭代;提供與GPU相媲美的計(jì)算性能,但擁有相較于GPU數(shù)量級(jí)的延時(shí)優(yōu)勢(shì),為業(yè)務(wù)構(gòu)建最強(qiáng)勁的實(shí)時(shí)AI服務(wù)能力

基于FPGA的通用CNN加速設(shè)計(jì),可以大大縮短FPGA開發(fā)周期,支持業(yè)務(wù)深度學(xué)習(xí)算法快速迭代;提供與GPU相媲美的計(jì)算性能,但擁有相較于GPU數(shù)量級(jí)的延時(shí)優(yōu)勢(shì),為業(yè)務(wù)構(gòu)建最強(qiáng)勁的實(shí)時(shí)AI服務(wù)能力。

WHEN?深度學(xué)習(xí)異構(gòu)計(jì)算現(xiàn)狀

隨著互聯(lián)網(wǎng)用戶的快速增長(zhǎng),數(shù)據(jù)體量的急劇膨脹,數(shù)據(jù)中心對(duì)計(jì)算的需求也在迅猛上漲。同時(shí),人工智能、高性能數(shù)據(jù)分析和金融分析等計(jì)算密集型領(lǐng)域的興起,對(duì)計(jì)算能力的需求已遠(yuǎn)遠(yuǎn)超出了傳統(tǒng)CPU處理器的能力所及。

異構(gòu)計(jì)算被認(rèn)為是現(xiàn)階段解決此計(jì)算溝壑的關(guān)鍵技術(shù),目前 “CPU+GPU”以及“CPU+FPGA” 是最受業(yè)界關(guān)注的異構(gòu)計(jì)算平臺(tái)。它們具有比傳統(tǒng)CPU并行計(jì)算更高效率和更低延遲的計(jì)算性能優(yōu)勢(shì)。面對(duì)如此巨大的市場(chǎng),科技行業(yè)大量企業(yè)投入了大量的資金和人力,異構(gòu)編程的開發(fā)標(biāo)準(zhǔn)也在逐漸成熟,而主流的云服務(wù)商更是在積極布局。

WHY?通用CNN FPGA加速

業(yè)界可以看到諸如微軟等巨頭公司已經(jīng)部署大批量的FPGA來(lái)做AI inference加速,F(xiàn)PGA相較于其他器件的優(yōu)勢(shì)是什么呢?

Flexibility:可編程性天然適配正在快速演進(jìn)的ML算法

DNN、CNN、LSTM、MLP、reinforcement learning以及決策樹等等

任意精度動(dòng)態(tài)支持

模型壓縮、稀疏網(wǎng)絡(luò)、更快更好的網(wǎng)絡(luò)

Performance:構(gòu)建實(shí)時(shí)性AI服務(wù)能力

相較于GPU/CPU數(shù)量級(jí)提升的低延時(shí)預(yù)測(cè)能力

相較于GPU/CPU數(shù)量級(jí)提升的單瓦特性能能力

Scale

板卡間高速互聯(lián)IO

Intel CPU-FPGA構(gòu)架

與此同時(shí),F(xiàn)PGA的短板也非常的明顯,F(xiàn)PGA使用HDL硬件描述語(yǔ)言來(lái)進(jìn)行開發(fā),開發(fā)周期長(zhǎng),入門門檻高。以單獨(dú)的經(jīng)典模型如Alexnet以及Googlenet為例,針對(duì)一個(gè)模型進(jìn)行定制的加速開發(fā),往往需要數(shù)月的時(shí)間。業(yè)務(wù)方以及FPGA加速團(tuán)隊(duì)需要兼顧算法迭代以及適配FPGA硬件加速,十分痛苦。

一方面需要FPGA提供相較于CPU/GPU有足夠競(jìng)爭(zhēng)力的低延時(shí)高性能服務(wù),一方面需要FPGA的開發(fā)周期跟上深度學(xué)習(xí)算法的迭代周期,基于這兩點(diǎn)我們?cè)O(shè)計(jì)開發(fā)了一款通用的CNN加速器。兼顧主流模型算子的通用設(shè)計(jì),以編譯器產(chǎn)生指令的方式來(lái)驅(qū)動(dòng)模型加速,可以短時(shí)間內(nèi)支持模型切換;同時(shí),對(duì)于新興的深度學(xué)習(xí)算法,在此通用基礎(chǔ)版本上進(jìn)行相關(guān)算子的快速開發(fā)迭代,模型加速開發(fā)時(shí)間從之前的數(shù)月降低到現(xiàn)在的一到兩周之內(nèi)。

HOW?通用CNN FPGA架構(gòu)

基于FPGA的通用CNN加速器整體框架如下,通過(guò)Caffe/Tensorflow/Mxnet等框架訓(xùn)練出來(lái)的CNN模型,通過(guò)編譯器的一系列優(yōu)化生成模型對(duì)應(yīng)的指令;同時(shí),圖片數(shù)據(jù)和模型權(quán)重?cái)?shù)據(jù)按照優(yōu)化規(guī)則進(jìn)行預(yù)處理以及壓縮后通過(guò)PCIe下發(fā)到FPGA加速器中。FPGA加速器完全按照指令緩沖區(qū)中的指令集驅(qū)動(dòng)工作,加速器執(zhí)行一遍完整指令緩沖區(qū)中的指令則完成一張圖片深度模型的計(jì)算加速工作。每個(gè)功能模塊各自相對(duì)獨(dú)立,只對(duì)每一次單獨(dú)的模塊計(jì)算請(qǐng)求負(fù)責(zé)。加速器與深度學(xué)習(xí)模型相抽離,各個(gè)layer的數(shù)據(jù)依賴以及前后執(zhí)行關(guān)系均在指令集中進(jìn)行控制。

簡(jiǎn)單而言,編譯器的主要工作就是對(duì)模型結(jié)構(gòu)進(jìn)行分析優(yōu)化,然后生成FPGA高效執(zhí)行的指令集。編譯器優(yōu)化的指導(dǎo)思想是:更高的MAC dsp計(jì)算效率以及更少的內(nèi)存訪問(wèn)需求。

接下來(lái)我們以Googlenet V1模型為例,對(duì)加速器的設(shè)計(jì)優(yōu)化思路做簡(jiǎn)單的分析。IncepTIon v1的網(wǎng)絡(luò),將1x1、3x3、5x5的conv和3x3的pooling stack在一起,一方面增加了網(wǎng)絡(luò)的width,另一方面增加了網(wǎng)絡(luò)對(duì)尺度的適應(yīng)性。下圖為模型中IncepTIon的基本結(jié)構(gòu)。

數(shù)據(jù)依賴關(guān)系分析

此部分主要分析挖掘模型中可流水化以及可并行化的計(jì)算。流水化的設(shè)計(jì)可以提高加速器中的計(jì)算單元利用率,并行化的計(jì)算可以在同一時(shí)刻利用盡量多的計(jì)算單元。

關(guān)于流水,分析部分包括數(shù)據(jù)從DDR加載到FPGA片上SRAM的操作與PE進(jìn)行計(jì)算的流水,通過(guò)此項(xiàng)優(yōu)化將內(nèi)存訪問(wèn)的時(shí)間overlap;DSP計(jì)算整列的計(jì)算控制過(guò)程,保證DSP利用率的提升。

關(guān)于并行,需要重點(diǎn)分析PE計(jì)算陣列與激活、pooling以及歸一化等“后處理”模塊之間的并行關(guān)系,如何確定好數(shù)據(jù)依賴關(guān)系以及防止沖突是此處設(shè)計(jì)關(guān)鍵。在IncepTIon中,可以從其網(wǎng)絡(luò)結(jié)構(gòu)中看到,branch a/b/c的1x1的卷積計(jì)算與branch d中的pooling是可以并行計(jì)算的,兩者之間并不存在數(shù)據(jù)依賴關(guān)系。通過(guò)此處優(yōu)化,3x3 max pooling layer的計(jì)算就可以被完全overlap。

模型優(yōu)化

在設(shè)計(jì)中主要考慮兩個(gè)方面:尋找模型結(jié)構(gòu)優(yōu)化以及支持動(dòng)態(tài)精度調(diào)整的定點(diǎn)化。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

中國(guó),上海——2026年3月26日——低功耗可編程領(lǐng)域的領(lǐng)導(dǎo)者,萊迪思半導(dǎo)體(NASDAQ: LSCC)今日宣布正式加入英偉達(dá)(NVIDIA) Halos AI系統(tǒng)檢測(cè)實(shí)驗(yàn)室生態(tài)體系。該實(shí)驗(yàn)室是首個(gè)獲得美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)認(rèn)...

關(guān)鍵字: 物理人工智能 傳感器 FPGA

在工業(yè)自動(dòng)化的“神經(jīng)網(wǎng)絡(luò)”中,EtherCAT憑借其獨(dú)特的“飛過(guò)處理”機(jī)制,已成為實(shí)時(shí)控制領(lǐng)域的王者。不同于傳統(tǒng)以太網(wǎng)的存儲(chǔ)轉(zhuǎn)發(fā),EtherCAT數(shù)據(jù)幀在經(jīng)過(guò)每個(gè)從站時(shí),硬件直接從中提取數(shù)據(jù)并插入響應(yīng),這種“邊飛邊修”的...

關(guān)鍵字: EtherCAT FPGA 總線

在復(fù)雜的SoC芯片設(shè)計(jì)流程中,硬件與軟件的“割裂”往往是導(dǎo)致項(xiàng)目延期的元兇。當(dāng)RTL代碼還在仿真階段時(shí),軟件團(tuán)隊(duì)只能基于指令集模擬器(ISS)進(jìn)行開發(fā),不僅速度慢如蝸牛,且無(wú)法捕捉真實(shí)硬件的時(shí)序細(xì)節(jié)。此時(shí),F(xiàn)PGA原型驗(yàn)...

關(guān)鍵字: SoC 硬件加速 FPGA

在工業(yè)4.0浪潮中,邊緣計(jì)算網(wǎng)關(guān)正成為連接物理世界與數(shù)字世界的核心樞紐。面對(duì)多路傳感器產(chǎn)生的海量數(shù)據(jù)洪流,傳統(tǒng)單芯片架構(gòu)已難以滿足實(shí)時(shí)性與算力的雙重需求。NVIDIA Jetson與FPGA的異構(gòu)組合,通過(guò)"前端FPGA...

關(guān)鍵字: 邊緣計(jì)算 NVIDIA Jetson FPGA

在高速網(wǎng)絡(luò)通信領(lǐng)域,F(xiàn)PGA憑借其并行處理能力成為實(shí)現(xiàn)以太網(wǎng)MAC(媒體訪問(wèn)控制)層的理想平臺(tái)。然而,面對(duì)1G甚至10Gbps的線速流量,傳統(tǒng)的“軟件式”逐包處理早已力不從心。構(gòu)建高效的包處理流水線(Packet Pro...

關(guān)鍵字: 以太網(wǎng) MAC FPGA

在FPGA實(shí)現(xiàn)數(shù)字信號(hào)處理(DSP)算法時(shí),DSP Slice作為專用硬件資源,其利用效率直接影響系統(tǒng)性能與成本。本文聚焦乘加運(yùn)算(MAC)的優(yōu)化實(shí)現(xiàn),分享流水線設(shè)計(jì)與資源復(fù)用的實(shí)用技巧,幫助開發(fā)者在有限資源下實(shí)現(xiàn)更高吞...

關(guān)鍵字: FPGA DSP

在異構(gòu)計(jì)算的浪潮中,F(xiàn)PGA憑借其可重構(gòu)特性與高能效比,成為突破算力瓶頸的“利刃”。然而,當(dāng)我們?cè)噲D通過(guò)OpenCL將FPGA納入統(tǒng)一計(jì)算平臺(tái)時(shí),一個(gè)巨大的幽靈始終盤旋在系統(tǒng)上方——內(nèi)存帶寬瓶頸。PCIe總線的有限帶寬與...

關(guān)鍵字: OpenCL FPGA

將成熟的ASIC設(shè)計(jì)遷移至FPGA平臺(tái),絕非簡(jiǎn)單的“復(fù)制粘貼”。ASIC設(shè)計(jì)追求極致的能效比和定制化物理布局,而FPGA受限于固定的邏輯單元(LUT、FF、DSP、BRAM)架構(gòu),直接移植往往導(dǎo)致資源利用率低下甚至?xí)r序收...

關(guān)鍵字: ASIC FPGA

在高性能FPGA設(shè)計(jì)中,DSP48E2 Slice絕非僅僅是一個(gè)簡(jiǎn)單的乘法單元。若將其僅視為“硬件乘法器”,將極大浪費(fèi)其潛在的算力。作為Xilinx UltraScale+架構(gòu)的核心算術(shù)引擎,DSP48E2集成了預(yù)加器、...

關(guān)鍵字: DSP48E2 FPGA

在浩瀚宇宙中,高能粒子如隱形的子彈,時(shí)刻轟擊著航天器的電子核心。對(duì)于FPGA而言,單粒子翻轉(zhuǎn)(SEU)可能導(dǎo)致邏輯狀態(tài)突變,引發(fā)災(zāi)/難性后果。此時(shí),三模冗余(TMR)技術(shù)便成為守護(hù)系統(tǒng)可靠的“神盾”,它通過(guò)硬件代價(jià)換取極...

關(guān)鍵字: 抗輻射加固設(shè)計(jì) FPGA 三模冗余
關(guān)閉