999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于卷積網絡加速器的FPGA數據處理研究

2022-04-18 10:00:46李政清穆繼亮
計算機仿真 2022年3期
關鍵詞:數據處理效率特征

李政清,穆繼亮

(1. 三亞學院理工學院,海南 三亞 570200;2. 中北大學儀器與電子學院,山西 太原 030000

1 引言

在機器視覺與人工智能的嵌入式應用場景中,需要完成大量的數據計算分析。對于復雜算法,采用CPU的實現方式普遍存在效率低下,實時性較差的缺點;采用CPU的實現的方式則會導致功耗和成本的增加。于是,越來越多的研究采取FPGA作為數據處理硬件加速器[1]。

由于卷積神經網絡(CNN)在圖像、語音識別方面表現出的良好學習特征,很多研究人員欲將其引入人工智能的嵌入式領域。CNN除了具有多層學習能力,還自帶并發計算特征[2],恰好與FPGA的并發處理相互照應。同時,FPGA具有的可編程能力能夠有效適應CNN的網絡變化。但是,經典CNN的結構和參數過于復雜,對于資源受限的嵌入式系統而言,難以直接進行使用[3]。于是,一些學者致力于CNN與嵌入式系統的融合,從而提高嵌入式系統上的數據處理性能。文獻[4]在CNN中采用了快速濾波來降低計算復雜度,同時設計了適用于FPGA的算法架構,從而獲得較好的有效算力。文獻[5]通過滑窗的并行來對卷積操作進行加速,并采取8bit的定點量化處理,從而減少FPGA資源消耗,并獲取較高的處理精度。文獻[6]基于CNN稀疏特征,將其轉換成矩陣乘積處理,并在FPGA上進行實現,該方法實現簡單,容易在嵌入式系統上移植。此外,文獻[7]設計了VGG網絡加速器,并且具備完整的卷積與連接過程;文獻[8]設計了U-Net網絡加速器,具備卷積與逆向卷積過程。

基于當前研究,本文設計了一種卷積網絡加速器,通過對各層的優化來改善網絡的收斂性和適應性,以及神經元增長對權值處理效率的影響。針對FPGA應用設計了相應的加速器實現架構,包括數據處理和緩存機制,并通過資源分析來調整網絡架構。最后,利用與不同平臺與不同加速器的比較,對基于卷積網絡加速器的FPGA數據處理性能進行驗證。

2 卷積網絡加速器

2.1 CNN模型

CNN一般由卷積、池化,以及連接多個層構成,其模型描述如圖1所示。對于任意輸入,利用卷積層對其進行特征的分析提取。該過程中首先需要將特征圖與卷積核相乘,再通過ReLU函數與卷積處理確定最終的特征圖,采用ReLU函數有利于加速收斂,其表達式描述如下

ReLU:y=max(0,x)

(1)

圖1 CNN模型

利用上層卷積處理輸出下層特征圖,同時卷積核對應變量就是計算權值,卷積過程描述如下

L[d,d,k,g])+P

(2)

其中,i代表上級特征圖的層數;d′,w′,h′分別代表下級特征圖對應的深度、寬度和高度;D代表上級特征圖深度;K,G代表卷積核大??;P代表偏置。

池化層主要用于完成抽樣處理,通常采取與卷積層交叉的方式。利用抽樣處理,有利于提高網絡的適應性。這里采取平均池化策略,公式描述如下

(3)

連接層位于網絡輸出側,包含眾多權值計算。在網絡拓撲結構增加的情況下,由于層數與神經元數量的增加,將會使得權值數量急劇增長,進而嚴重影響數據處理效率。為降低權值數量,將特征圖先與1×1卷積核進行運算,再依次與1×1、3×3卷積核進行運算。利用3×3卷積把特征圖采取壓縮,這樣就能夠在一個層中達到并行計算的目的。同時,池化層與連接層可以看作是特殊情況下的卷積層,可以采用同樣的策略。

2.2 FPGA處理模塊設計

處理模塊的核心任務是卷積操作,并得到最終的特征圖。由于特征圖包含多個方向,且要在各個方向上采取并行計算,這就需要有多個處理模塊共同參與。對于一個l×l大小的特征圖,處理模塊會將特征和權值派發給l×l個處理單元,最終處理模塊將要進行m×l×l次乘加操作,其中m代表通道數量。

處理單元在接收到派發數據后,根據比較器的結果確定輸入數據的有效性。同時局部計數器將對有效數據進行計數。然后判定器對有效數據的權值索引和計數等參數采取驗證,充分保證權值與特征圖的有效,其中索引被標記為log2m位寬定點數dl,l。對于比較器i的輸出,判定器的驗證過程可以表示如下

check=i&(dl,l>>count)

(4)

其中,count代表有效數據計數。

驗證結果將會被傳遞至控制單元,進而控制驗證通過的數據參與乘加操作。乘加操作涉及的計算量較大,交給FPGA的片上DSP處理,通過若干DSP并行的方式提高計算效率。DSP的使用情況可以采用以下公式進行估算:

RDSP=NDSP×NPU×l×l

(5)

其中,NDSP代表占用的DSP模塊數量;NPU代表處理模塊數量;l×l為計算單元數量。

2.3 FPGA緩存模塊設計

在計算過程中,產生的與特征圖與權值相關變量均采取BRAM緩存。對于并行變量,應該確保它們存放在不同的BRAM分區上。對于存儲區域,應該從橫向、縱向,以及深度方面分別采取分配。假定處理模塊陣列描述為Pw×Ph×Pd,Pw,Ph,Pd分別表示在橫向、縱向和深度方面的處理模塊數量。在輸入數據的橫向上,處理模塊將會得到Pw+l-1個變量及其相應的計算,根據變量與計算的數量,將數據分配至Pw+l-1個BRAM。同理,在縱向上分配Ph+l-1個BRAM,深度上分配NDSP個BRAM。輸出數據在橫向上分配Pw個BRAM;縱向上分配Ph個BRAM;深度上分配NPU個BRAM。權值在橫向和縱向上均分配l個BRAM;輸入深度上分配NDSP個BRAM;輸出深度上分配NPU個BRAM。

除了緩存的分配,還應關注復用情況,良好的復用設計能夠緩解數據交換過程中的資源損耗。處理單元每一輪分配的BRAM數量為RDSP,在本輪執行過后,如果將其間的變量保留下來,便可以在后續操作時快速獲取參數值,并避免重復計算。尤其是當滑動窗口發生移動,可以直接從緩存得到所需變量。假定輸入、輸出和權值對應的復用系數分別為λ1,λ2,λ3,則BRAM的使用情況可以表示為

RBRAM=λ1((Pw+l-1)×(Ph+l-1)×NDSP)+

λ2(Pw×Ph×NPU)+λ3(l×l×NDSP×NPU)

(6)

3 FPGA資源分析

卷積網絡加速器在對輸入數據進行處理的過程中,可以采用并行方式進行操作。而FPGA在利用片上DSP實現卷積操作時,也可以采用并行方式實現網絡計算。該過程中,計算并行程度受輸出特征圖影響,卷積核并行程度則受FPGA影響。由于卷積操作的所有乘法計算都是基于DSP的,因此在卷積核并行計算時,乘法器與DSP應該滿足如下關系

CP×DP×Mi≤DSPtotal

(7)

其中,CP代表計算并行程度;DP代表卷積核并行程度;Mi代表處理i×i卷積時的乘法器數量;DSPtotal代表FPGA內部的DSP模塊數量。

在基于卷積網絡加速器的FPGA數據處理過程中,不僅是對DSP資源的占用,還有對存儲資源的占用。BRAM需要完成特征圖與中間結果的緩存,于是存儲資源應該滿足如下關系

(8)

在考慮資源占用的同時,還應該分析數據處理過程中FPGA的執行時間。在固定時鐘周期Tclk情況下,數據輸入的時間受特征圖的大小、通道,以及硬件架構影響,公式表示為

Tin=Tclk×η1×win×hin×din

(9)

其中,η1代表傳遞效率。

權值變量受卷積操作影響,其時間表示為:

Tw=Tclk×j×j×DP×din

(10)

數據在卷積網絡的中間計算時間除了與特征圖大小有關外,主要受并行性能和計算效率影響,公式表示為

(11)

其中,η2代表計算效率;Nc代表卷積量。

結果輸出時間與并行行性能有關,表示為

(12)

通過求解Tin,Tw,Tc,Tout的總和,便可以得到一層網絡的執行時間,再根據網絡層數,就可以計算得到FPGA的累計需要時間。

4 仿真與結果分析

4.1 仿真架構

實驗平臺選擇Xinlinx VC709,其上搭載的是VC709 FPGA,實現環境是Xinlinx Vivado 2017。該FPGA的片上資源包括3600 DSP Slice,1470 BRAM,以及433200LUT。仿真數據集選擇ImageNet,在初始化階段,通過歸一化操作將像素映射到[-1,1]范圍內。卷積網絡加速器陣列規模設置為128×16,特征圖與權值在BRAM的緩沖深度均設置成2048?;诰矸e網絡加速器實現的FPGA數據處理架構如圖2所示。

圖2 FPGA數據處理架構

為了形成性能對比,分別選擇一款CPU與GPU體系架構。CPU型號為Intel core i5 2500K,主頻3.3GHz;GPU型號NVIDIA GeForce GTX 960。除了對體系結構進行比較外,還采用VGG[6]、U-Net[7]和HCNN[8]的方法,在相同的FPGA體系結構中進行性能的對比分析,同時,實驗過程中將本文所提加速器標記為NCNN。

4.2 實驗結果

通過測試得到基于卷積網絡加速器的FPGA數據處理時的資源使用狀況,如表1所示。該表描述了所提加速器在并行計算最優情況下時對FPGA各類資源的利用。DSP的利用率達到89.20%,DSP的主要功能是進行復雜的卷積計算,其利用率高說明了加速器能夠有效利用DSP的計算性能,改善計算效率與并行性。此外,BRAM和LUT資源的利用率也比較理想,表明所提方案在FPGA資源利用方面的合理性。

表1 FPGA資源利用狀況

表2描述了最優卷積網絡加速器的分層框架與性能??梢钥闯?,前三層操作數量與卷積核都在不斷攀升,在第四層卷積操作達到峰值,對應的GOPS也較高。整體來看,整個網絡的計算時間為15.406ms,GOPS為148.88。

表2 最優卷積網絡加速器的分層數據

基于不同的平臺,得到各自對應的性能對比,結果如表3所示。經比較可知,在圖像計算時間上,FPGA平臺所需時間僅為GPU的15.7%,為CPU的5.0%。有效算力則是GPU的2.3倍,是的CPU的8.1倍。此外,功耗也有所降低,比GPU少37.9W,比CPU少57.69W。通過各項數據比較,所提加速器表現出明顯的性能收益。

表3 不同平臺性能比較

基于FPGA實驗環境,測試不同加速器的幀速,結果如圖3所示。經比較可以發現,在相同的時鐘頻率情況下,本文所提加速器的幀速明顯高于對比方法,約為VGG的5.31倍,為U-Net的2.50倍,為HCNN的1.23倍。在推斷加速的同時,其功耗也沒有明顯的增加,維持在較為良好的功耗狀態。

圖3 不同加速器的性能比較

基于FPGA實驗環境,測試不同加速器的資源利用狀況,結果如圖4所示。通過結果比較可知,所提加速器對DSP與LUT資源的使用最多,這是因為加速器需要最大程度利用DSP資源來提高并行計算效率。對BRAM資源的使用則不是最高的,這是因為所提加速器為了提高數據利用率與查找效率,會對一些中間變量采取緩存,但是并沒有對過多數據進行緩存,緩存數據過多將會導致存儲效率和查找速度降低。

圖4 不同加速器的資源比較

5 結束語

本文設計了一種能夠在FPGA上運行的卷積網絡加速器,用以提高FPGA在數據處理時的并行效率。方案對卷積網絡采取優化加速,并基于加速器設計了FPGA的處理和緩存架構。通過與不同平臺的對比實驗,證明了所提方案可以有效利用FPGA資源,在處理時間、GOPS和功耗方面都優于GPU和CPU。另外,通過與不同方案的對比實驗,證明了所提方案具有良好的加速性能與合理的資源利用率。

猜你喜歡
數據處理效率特征
認知診斷缺失數據處理方法的比較:零替換、多重插補與極大似然估計法*
心理學報(2022年4期)2022-04-12 07:38:02
ILWT-EEMD數據處理的ELM滾動軸承故障診斷
水泵技術(2021年3期)2021-08-14 02:09:20
提升朗讀教學效率的幾點思考
甘肅教育(2020年14期)2020-09-11 07:57:42
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
基于希爾伯特- 黃變換的去噪法在外測數據處理中的應用
跟蹤導練(一)2
“錢”、“事”脫節效率低
中國衛生(2014年11期)2014-11-12 13:11:32
線性代數的應用特征
河南科技(2014年23期)2014-02-27 14:19:15
主站蜘蛛池模板: 欧美一区国产| aⅴ免费在线观看| 久久精品无码中文字幕| 免费不卡视频| 欧美色图久久| 色婷婷电影网| 98超碰在线观看| 少妇精品网站| 女同国产精品一区二区| 欧美成人第一页| 亚洲女人在线| 午夜日b视频| 亚洲区欧美区| 国产成人区在线观看视频| 国产亚洲美日韩AV中文字幕无码成人 | 亚洲三级色| 欧美色香蕉| 午夜国产精品视频| 国产精品视频3p| 91po国产在线精品免费观看| 一级做a爰片久久毛片毛片| 99国产精品一区二区| 亚洲一区二区无码视频| 99视频精品在线观看| 青青青亚洲精品国产| 亚洲欧洲自拍拍偷午夜色| 国产成人亚洲无码淙合青草| 久久特级毛片| 在线观看视频一区二区| 色综合天天操| 日韩国产一区二区三区无码| 日韩少妇激情一区二区| 久久免费观看视频| 日韩国产黄色网站| 亚洲第一中文字幕| 无码粉嫩虎白一线天在线观看| 在线不卡免费视频| 国产在线观看一区二区三区| 狠狠亚洲婷婷综合色香| 欧美精品高清| 国产女人在线| 2021国产在线视频| 日本三级精品| 美女国内精品自产拍在线播放| 99无码中文字幕视频| 精品人妻AV区| 国产日本欧美在线观看| 99视频在线看| 国产无人区一区二区三区| 欧美高清视频一区二区三区| 91麻豆国产视频| 国产内射在线观看| 日韩中文字幕免费在线观看| 亚洲美女一级毛片| 欧美亚洲日韩不卡在线在线观看| 青草视频在线观看国产| 99在线国产| 内射人妻无套中出无码| 国产91线观看| 国产午夜人做人免费视频中文 | 色视频国产| 国产黄在线免费观看| 欧美福利在线观看| 亚洲国产日韩在线成人蜜芽| 成人日韩精品| 奇米影视狠狠精品7777| 亚洲高清在线播放| www亚洲精品| 婷五月综合| 中日韩一区二区三区中文免费视频| 女人天堂av免费| 久久综合丝袜日本网| 99免费视频观看| 91色在线观看| 国产一区亚洲一区| 麻豆精品国产自产在线| 亚洲人成影院午夜网站| 日本欧美视频在线观看| 波多野结衣无码视频在线观看| 一级毛片在线播放| 欧美性猛交一区二区三区| 国产精品久久久久久久久|