国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向深度神經(jīng)網(wǎng)絡(luò)加速芯片的高效硬件優(yōu)化策略

2021-06-24 09:41:24張經(jīng)緯李國(guó)慶吳瑞霞曾曉洋
電子與信息學(xué)報(bào) 2021年6期
關(guān)鍵詞:計(jì)算資源加速器低功耗

張 萌 張經(jīng)緯* 李國(guó)慶 吳瑞霞 曾曉洋

①(東南大學(xué)電子學(xué)院國(guó)家專用集成電路系統(tǒng)工程技術(shù)研究中心 南京 210096)

②(復(fù)旦大學(xué)專用集成電路與系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室 上海 200433)

1 引言

人工智能算法的理論研究相比于幾年前取得了突出的進(jìn)步。因此,一部分研究人員開始將精力投在把人工智能算法特別是深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, DNN)部署在各種硬件平臺(tái)上,包括中央處理器(Central Processing Unit, CPU)、圖形處理器(Graphics Processing Unit, GPU)、現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)、專用集成電路(Application Specific Integrated Circuit, ASIC)上[1,2]。這些基于硬件平臺(tái)而專門構(gòu)建出來的神經(jīng)網(wǎng)絡(luò)加速器被證明在應(yīng)用于圖像分類[3]、目標(biāo)檢測(cè)[4,5]和語音識(shí)別等方面有著很好的效果,而像無人機(jī)檢測(cè)、自動(dòng)駕駛這類的強(qiáng)實(shí)時(shí)性的人工智能(Artificial Intelligence, AI)、物聯(lián)網(wǎng)應(yīng)用不僅對(duì)網(wǎng)絡(luò)識(shí)別精度有較高要求,而且對(duì)網(wǎng)絡(luò)推理速度以及硬件平臺(tái)功耗同樣是嚴(yán)峻的挑戰(zhàn)。相比較基于性能優(yōu)先的CPU/GPU這類通用處理器很難滿足功耗約束,F(xiàn)PGA和ASIC具有高能效、低功耗的特性成為當(dāng)前邊緣AI應(yīng)用方案的首選[6]。

但是想要基于低功耗硬件平臺(tái),構(gòu)建出符合要求的DNN加速器是非常有挑戰(zhàn)性的[7,8]。要求開發(fā)人員不僅了解AI算法,更加需要包括:(1)專用于低功耗平臺(tái)的DNN體系結(jié)構(gòu);(2)高效的內(nèi)存管理方案;(3)并行可靠的工作流。整個(gè)任務(wù)嚴(yán)重依賴設(shè)計(jì)者跨越機(jī)器學(xué)習(xí)和集成電路設(shè)計(jì)的專業(yè)知識(shí)。設(shè)計(jì)過程中如果只實(shí)現(xiàn)AI算法卻不考慮硬件優(yōu)化策略,就很難滿足邊緣計(jì)算方案低功耗和高實(shí)時(shí)性的嚴(yán)格要求。因此硬件優(yōu)化策略具有較高的普適性和重要的研究?jī)r(jià)值。

為了解決以上諸多問題,本文提出用于DNN加速芯片設(shè)計(jì)的一系列高效率優(yōu)化策略,并在FPGA上驗(yàn)證性能,包括可堆疊共享計(jì)算引擎(Process Engine, PE)、可調(diào)的循環(huán)次數(shù)、通道增強(qiáng)和預(yù)加載工作流優(yōu)化方法,利用有限的低功耗硬件資源獲得最好的性價(jià)比。本文所提硬件優(yōu)化策略:(1)基于SkyNet網(wǎng)絡(luò)模型應(yīng)用,設(shè)計(jì)出SEUer A型加速器,其精度和功耗都要優(yōu)于iSmart3-SkyNet(the 1st place in the DAC’2019-SDC)[9];(2)基于SkrSkr-SkyNet(the 2nd place in the DAC’2020-SDC)[10]應(yīng)用優(yōu)化出了SEUer B型加速器,最終分?jǐn)?shù)會(huì)超過UltraNet(the 1st place in the DAC’2020-SDC)。本文的主要貢獻(xiàn)如下:

(1)提出一種可堆疊共享PE用于組裝成并行度靈活的卷積計(jì)算模塊,可以獨(dú)立且高效率地完成逐點(diǎn)卷積(PointWise Convolution, PWC)計(jì)算和深度可分離卷積(DepthWise Convolution, DWC)計(jì)算,并且采用了行緩沖區(qū)結(jié)構(gòu)解決PWC單次讀取特征圖的限制。

(2)針對(duì)可堆疊共享PE提出了循環(huán)次數(shù)可調(diào),可根據(jù)網(wǎng)絡(luò)層數(shù)自動(dòng)優(yōu)化計(jì)算模塊中循環(huán)次數(shù),提高計(jì)算的效率。

(3)通道增強(qiáng)的方法不僅可以大幅度增強(qiáng)圖片輸入層的并行度,還可以增加與外部存儲(chǔ)器的通信帶寬。

(4)預(yù)加載工作流可以更好地協(xié)同處理系統(tǒng)(Processing System, PS)與可編程邏輯(Programmable Logic, PL),從而加速整個(gè)系統(tǒng),降低系統(tǒng)的延遲和功耗。

本文其余安排如下:第2節(jié)介紹專用于低功耗平臺(tái)的SkyNet的網(wǎng)絡(luò)結(jié)構(gòu)以及存在的問題,然后使用Roofline模型[11]分析基于SkyNet網(wǎng)絡(luò)設(shè)計(jì)出的iSmart3-SkyNet加速器的性能瓶頸;第3節(jié)針對(duì)這些問題給出對(duì)應(yīng)的優(yōu)化策略;第4節(jié)將討論我們?yōu)榈凸钠脚_(tái)提出的優(yōu)化策略的實(shí)驗(yàn)結(jié)果;第5節(jié)給出結(jié)論。

2 SkyNet網(wǎng)絡(luò)模型及其加速器問題分析

2.1 專注于低功耗目標(biāo)檢測(cè)的SkyNet模型

SkyNet是一個(gè)冠軍模型,它被設(shè)計(jì)出來專門用于嵌入式邊緣設(shè)備的目標(biāo)檢測(cè)和追蹤任務(wù)[9]??梢詾榈凸那度胧较到y(tǒng)提供可靠的推理精度的同時(shí)滿足實(shí)時(shí)響應(yīng)這類的低延時(shí)要求。SkyNet采用自下而上的DNN設(shè)計(jì)方法[12],將3×3深度卷積層、1×1點(diǎn)卷積層、批量歸一化的組合層和ReLU6組合成捆綁包(bundle)。將捆綁包反復(fù)堆疊形成如表1所示的網(wǎng)絡(luò)結(jié)構(gòu)。表1所示的超參數(shù)(包括網(wǎng)絡(luò)通道數(shù)和池化層的位置)是通過使用實(shí)際硬件進(jìn)行神經(jīng)網(wǎng)絡(luò)搜索而獲得的最佳解決方案。從硬件執(zhí)行效率角度考慮,SkyNet網(wǎng)絡(luò)比自上而下設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)更有效[13]。

CNN網(wǎng)絡(luò)的圖像輸入通道一般為3個(gè)光學(xué)三原色(Red Green Blue, RGB)或4個(gè)三原色加不透明參數(shù)(Red Green Blue Alpha, RGBA),因此很難在固定計(jì)算通道的PE上提高淺層網(wǎng)絡(luò)的計(jì)算效率[14,15]。例如,表1最后兩列反映了iSmart3-SkyNet理論計(jì)算量占比跟實(shí)際硬件延時(shí)占比差異,在第1個(gè)捆綁包中,雖然SkyNet的輸入層是3,但在理論計(jì)算中第1層的PWC的輸入層卻是32,DWC的輸出層卻是64而不是48。因?yàn)榧铀倨髦杏?jì)算模塊輸入輸出通道固定,iSmart-SkyNet的輸入并行度為16,輸出并行度為32。在計(jì)算第1層時(shí),即便通道當(dāng)中存在無效數(shù)據(jù),它在輸入輸出通道維度依舊各自循環(huán)兩次,也因此在表格中第1個(gè)、第2個(gè)捆綁包的計(jì)算量之和為34.48%;而實(shí)際加上異構(gòu)計(jì)算平臺(tái)的計(jì)算耗時(shí),僅僅第1個(gè)捆綁包的延時(shí)就占了整體時(shí)間的33.90%,實(shí)際延時(shí)相比較計(jì)算量,增加了69%。在這種情況下,第1個(gè)、第2個(gè)捆綁包的延時(shí)占到整個(gè)系統(tǒng)延時(shí)的1/2。因此考慮到帶寬限制等諸多現(xiàn)實(shí)因素,提高淺層網(wǎng)絡(luò)的計(jì)算效率,使得延時(shí)與計(jì)算量一致是非常困難的。

表1 SkyNet的體系結(jié)構(gòu)和每個(gè)捆綁包的推理速度表格

2.2 Roofline模型

計(jì)算和通信是系統(tǒng)吞吐量?jī)?yōu)化中的兩個(gè)主要限制。加州大學(xué)洛杉磯分校叢京生教授團(tuán)隊(duì)[11]的Roofline性能模型,反映了系統(tǒng)性能與片外內(nèi)存流量的關(guān)系,更重要的是,突出了硬件平臺(tái)的峰值性能與神經(jīng)網(wǎng)絡(luò)模型之間的相關(guān)性。式(1)描述了Roofline模型,PP是系統(tǒng)中所有可用計(jì)算資源提供的浮點(diǎn)吞吐量,也稱為計(jì)算屋頂。B是內(nèi)存帶寬(Memory Bandwidth, BW),而CC代表計(jì)算與通信之比(Computing To Communication, CTC)是每個(gè)片上存儲(chǔ)器流量的操作。加速器的實(shí)際計(jì)算性能不能超過計(jì)算屋頂和計(jì)算與通信比率×內(nèi)存帶寬的最小值。在第1種情況下,可達(dá)到的性能受到處理器可提供的最大計(jì)算資源限制;第2種情況則可達(dá)到的性能受到內(nèi)存帶寬的限制,并且無法充分利用計(jì)算資源

對(duì)于不同類型卷積以及不同循環(huán)展開的相同卷積,加速器計(jì)算通信比公式都是不一樣的。對(duì)于深度可分離卷積,計(jì)算通信比如式(2)所示

對(duì)于逐點(diǎn)卷積的計(jì)算通信比如式(4)和式(5)所示,其中出現(xiàn)的參數(shù)量的含義與式(2)和式(3)的一致

在iSmart3-SkyNet中,DWC和PWC分別由不同的計(jì)算引擎計(jì)算。DWC和PWC的Roofline模型的說明如圖1所示。對(duì)于DWC的Roofline模型的圖示如圖1(a)所示,第1層可獲得的性能非常低,這受到帶寬的限制。因此,捆綁包#1的等待時(shí)間百分比大于捆綁包#1的浮點(diǎn)操作次數(shù)(Floating Point of OPeration, FLOP)。此外,計(jì)算上限僅約為6.88 GFLOPS,這受計(jì)算資源的限制,因?yàn)镻WC計(jì)算引擎占用了最多的計(jì)算資源。圖1(b)顯示了PWC層的Roofline模型,所有層的可達(dá)到的性能都達(dá)到了計(jì)算上限110 GFLOPS。但是,計(jì)算能力不高。此外,DWC和PWC由不同的計(jì)算引擎計(jì)算。換句話說,當(dāng)PWC引擎工作時(shí),DWC引擎是自由的,反之亦然。計(jì)算資源的利用率不高。在第1層中,輸入通道為3,但是iSmart3-SkyNet計(jì)算32個(gè)通道。冗余計(jì)算會(huì)增加推理延遲。這些問題在其他用于輕量級(jí)目標(biāo)檢測(cè)網(wǎng)絡(luò)的加速器中也存在。為了解決這些問題,提出了幾種方法,這些方法在第3節(jié)介紹。

圖1 iSmart3-SkyNet加速器上的SkyNet Roofline模型分析

3 優(yōu)化策略

本節(jié)首先介紹高效優(yōu)化策略下的加速器總體架構(gòu),該架構(gòu)可專用于低功耗平臺(tái)。以專用于低功耗平臺(tái)的網(wǎng)絡(luò)SkyNet為例,經(jīng)問題分析,可堆疊共享PE、通道增強(qiáng)、循環(huán)次數(shù)可調(diào)、預(yù)加載工作流優(yōu)化方法依次被提出。這樣,基于低功耗平臺(tái)有限的硬件資源,可充分發(fā)揮并行計(jì)算優(yōu)勢(shì),實(shí)現(xiàn)更加高效的邊緣計(jì)算。

3.1 系統(tǒng)整體結(jié)構(gòu)

系統(tǒng)的整體架構(gòu)如圖2所示,架構(gòu)基于異構(gòu)結(jié)構(gòu),包含了可編程邏輯(Progarmmable Logic,PL)和高性能處理系統(tǒng)(Processing System, PS)。PL由4個(gè)模塊組成:內(nèi)存判決模塊通過高性能總線接口(Advanced eXtensible Interface, AXI)直接訪問外部存儲(chǔ)器以及調(diào)度雙倍的數(shù)據(jù)緩沖區(qū)形成乒乓結(jié)構(gòu),最大化利用片上存儲(chǔ)器;多個(gè)可堆疊共享計(jì)算引擎(Process Engine, PE)堆疊成為計(jì)算模塊來處理PWC和DWC計(jì)算;池化激活模塊完成池化與激活計(jì)算;控制模塊被設(shè)計(jì)用來控制PL邏輯和時(shí)序,保證每個(gè)模塊在正確的時(shí)刻被正確地重用。PS采用了多進(jìn)程優(yōu)化,以提高圖像預(yù)處理和后處理的計(jì)算速度。

圖2 系統(tǒng)-計(jì)算模塊-線性緩沖區(qū)結(jié)構(gòu)示意圖

加速器開始工作時(shí),圖像和權(quán)重被存儲(chǔ)在外部存儲(chǔ)器中。PS做圖像預(yù)處理的同時(shí),向PL發(fā)出啟動(dòng)信號(hào)。PL中的控制模塊接收啟動(dòng)信號(hào)后,控制內(nèi)存判決模塊通過AXI4接口從外部存儲(chǔ)器中讀取權(quán)重和圖像并存儲(chǔ)到相應(yīng)的緩沖區(qū)中,接著控制模塊按照網(wǎng)絡(luò)模型順序依次重復(fù)調(diào)用計(jì)算模塊和池化激活模塊,最后內(nèi)存判決模塊將結(jié)果輸出給PS做后處理完成所有任務(wù)。

3.2 可堆疊共享PE

由于有限的硬件資源,并且PWC計(jì)算引擎占用了大多數(shù)計(jì)算資源[16],因此DWC計(jì)算引擎的峰值性能非常低。本文提出一種可堆疊的共享PE,以提高DWC計(jì)算引擎的峰值性能。幾個(gè)這樣的PE被組裝并堆疊到一個(gè)大型計(jì)算模塊中。PWC和DWC操作都共享此計(jì)算模塊。這意味著在整個(gè)任務(wù)中只有一個(gè)這樣的計(jì)算模塊就可以完成PWC和3×3 的DWC。

如圖2(b)所示,共享PE由9個(gè)DSP組成,因此可以在1個(gè)時(shí)鐘周期內(nèi)完成3×3 DWC計(jì)算。受雙端口塊隨機(jī)存取存儲(chǔ)器(dual-port Block Random Access Memory, BRAM)功能的限制,1個(gè)時(shí)鐘周期內(nèi)最多可以讀取兩個(gè)像素。為了解決這個(gè)問題,共享PE利用BRAM和DWC計(jì)算引擎之間的行緩沖區(qū)。如圖2(c)所示,紅色特征圖的像素被存儲(chǔ)在行緩沖區(qū)中,而滑動(dòng)窗口的像素被用于當(dāng)前計(jì)算。在每個(gè)時(shí)鐘周期,窗口中的像素都會(huì)移動(dòng),新的像素會(huì)從行緩沖區(qū)中移入,而舊的像素會(huì)從窗口中彈出,以便可以展開內(nèi)核,并且可以映射特征圖的9個(gè)像素1個(gè)時(shí)鐘周期內(nèi)即可輕松獲得。

對(duì)于SkyNet,選擇32個(gè)共享PE堆疊到計(jì)算模塊中,并且在計(jì)算PWC時(shí),將展開18個(gè)輸入通道和16個(gè)輸出通道。16/18輸入通道用于傳輸數(shù)據(jù),其他兩個(gè)通道的值為0。在計(jì)算DWC時(shí),所有通道都用于傳輸數(shù)據(jù),并且計(jì)算速度將比訪問外部存儲(chǔ)器更快,并且會(huì)觸及加速器的存儲(chǔ)墻。

3.3 循環(huán)次數(shù)可調(diào)

從表1可以看出,SkyNet的前兩層實(shí)際耗時(shí)比理論上花費(fèi)更多的時(shí)間。淺網(wǎng)絡(luò)層的通道很少,圖像輸入通道通常只有3(RGB)或4(RGBA)。具有固定輸入和輸出通道尺寸的計(jì)算引擎將在處理淺層網(wǎng)絡(luò)時(shí)導(dǎo)致某些通道的計(jì)算資源空閑,并且其他循環(huán)將導(dǎo)致額外的系統(tǒng)延遲。具有不變循環(huán)計(jì)數(shù)的計(jì)算模塊不能完美地應(yīng)用于淺層網(wǎng)絡(luò)。因此,本文提出循環(huán)計(jì)數(shù)可調(diào)節(jié)的優(yōu)化方法。

可調(diào)節(jié)的循環(huán)計(jì)數(shù)方法建立在可堆疊共享PE基礎(chǔ)上。通過提供的參數(shù)變量[輸入通道并行度(Channel Input, CI)],可以自由地堆疊到計(jì)算模塊中,它根據(jù)不同的層自動(dòng)調(diào)節(jié)循環(huán)計(jì)數(shù),以達(dá)到最小功耗和最低延遲。例如,iSmart3-SkyNet的輸入通道并行度為16。在計(jì)算PWC的第1層時(shí),在輸入通道尺寸上循環(huán)了兩次,而第2個(gè)循環(huán)為無效計(jì)算。最終iSmart3-SkyNet第1層中超過90%的計(jì)算資源處于空閑狀態(tài),這也導(dǎo)致更長(zhǎng)的延遲和更多的功耗。如果iSmart3-SkyNet使用可調(diào)節(jié)的循環(huán)計(jì)數(shù)優(yōu)化,則可以基于不同的層調(diào)節(jié)循環(huán)計(jì)數(shù)。在計(jì)算第1個(gè)PWC層時(shí),輸入通道尺寸將僅循環(huán)1次,而不是原始的兩倍。即使圖像輸入通道尺寸僅循環(huán)1次,仍然有13/16 DSP處于空閑狀態(tài),第1個(gè)PWC層的這種無用計(jì)算可以通過3.4節(jié)描述的通道增強(qiáng)優(yōu)化來解決。

3.4 通道增強(qiáng)

由表1分析,相比較于第2層網(wǎng)絡(luò),第1層網(wǎng)絡(luò)硬件延時(shí)遠(yuǎn)遠(yuǎn)大于計(jì)算量,占整個(gè)系統(tǒng)延時(shí)的1/3。這是因?yàn)樵谙馭kyNet這樣的CNN中,第1層圖片的輸入通道只有3個(gè)(RGB)。即使使用了循環(huán)次數(shù)可調(diào)優(yōu)化,iSmart3-SkyNet的第1層PWC的通道利用率并不高,DSP的利用效率僅為3/16。為了解決這一問題,通道增強(qiáng)優(yōu)化被提出。方法如圖3所示,先將特征圖以像素單位裁剪,并以RGB的順序在通道維度上重新排列。從低位開始一直排列到高位。下一輪從上一輪結(jié)束的像素開始,重復(fù)以上操作直至最后一個(gè)像素點(diǎn)。如此使得處理后的特征圖的通道展寬,提高了第1層的計(jì)算并行性。

圖3 通道增強(qiáng)流程說明圖

本文提出的通道增強(qiáng)不同于傳統(tǒng)通道增強(qiáng)技術(shù)[17]。通道增強(qiáng)優(yōu)化不僅提高了圖片輸入層的計(jì)算并行性,還大大提高了與外部存儲(chǔ)器的傳輸帶寬。例如在iSmart3-SkyNet中,傳輸圖像的AXI4的數(shù)據(jù)位寬只有8位,在Skrskr-SkyNet中傳輸圖像的AXI4的數(shù)據(jù)位寬度為32位,但只有24位有效。而在使用了通道增強(qiáng)優(yōu)化的SkrSkr-SkyNet,用于傳輸圖像的AXI4總線數(shù)據(jù)寬度為128位并且沒有原先的無效數(shù)據(jù)。因此傳輸圖像的帶寬大大提升,訪問存儲(chǔ)器的次數(shù)減少,系統(tǒng)延時(shí)和功耗也隨之減少。

3.5 預(yù)加載工作流

當(dāng)前可用于計(jì)算CNN的工作流程如下:獲取圖像(picture)、對(duì)該圖像進(jìn)行預(yù)處理、將處理后的圖像復(fù)制到DDR存儲(chǔ)器進(jìn)行存儲(chǔ)、在加速器上計(jì)算DNN模型以及后處理,如圖4(a)所示,盡管DNN是在PL上并行計(jì)算的,但其工作受到串行工作流程的限制,并且必須等待上一幅圖像的后處理完成,才能對(duì)DNN進(jìn)行預(yù)處理。將處理后的圖像復(fù)制到DDR內(nèi)存中,然后才能開始工作。此串行工作流程效率低下。一般的并行工作流程如圖4(b)所示。與串行工作流程相比,在并行工作流程中,PL正在執(zhí)行DNN計(jì)算,而PS也在預(yù)處理下一張圖片。但是,PL仍處于空閑狀態(tài)。因此,提出了預(yù)加載工作流程。如圖4(c)所示,在計(jì)算圖像的第1層之后,PS將預(yù)處理的下一個(gè)圖像復(fù)制到DDR以替換舊圖像。由于PL幾乎始終處于工作狀態(tài),因此預(yù)加載工作流程的效率高于圖4(b)。

圖4 3種工作流比較圖

值得一提的是,其中PS上的預(yù)處理速度一般都要快于PL上DNN的計(jì)算速度。而要想做到這一點(diǎn),需要對(duì)PS做多進(jìn)程優(yōu)化。以多個(gè)進(jìn)程對(duì)攝像頭采集的照片同時(shí)預(yù)處理,然后將圖像放入隊(duì)列并等待存入DDR中。PL在計(jì)算完DNN之后會(huì)將結(jié)果存入另一個(gè)隊(duì)列,PS也會(huì)以多進(jìn)程優(yōu)化確保后處理時(shí)間快于DNN第1層的計(jì)算時(shí)間。如此一來,系統(tǒng)的關(guān)鍵路徑在PL處,且PL的效率接近100%。

4 實(shí)驗(yàn)結(jié)果分析

根據(jù)第3節(jié)提出的優(yōu)化方法優(yōu)化iSmart3-SkyNet加速器后,優(yōu)化后的DWC層的Roofline模型如圖5(a)所示??梢钥闯觯c原始Roofline模型相比,第1層DWC的性能不再比其他DWC層的性能更弱,因?yàn)橥ǖ涝鰪?qiáng)優(yōu)化增加了帶寬。由于共享計(jì)算資源,DWC的計(jì)算能力從原來的6.88 GFLOPS增加到172.8 GFLOPS。它使所有DWC層從計(jì)算限制變?yōu)閮?nèi)存限制,使得可達(dá)到的性能得到了顯著提高。PWC的Roofline模型如圖5(b)所示。優(yōu)化的PWC計(jì)算屋頂從原來的110 GFLOPS增加到307.2 GFLOPS。計(jì)算屋頂?shù)脑黾訉?dǎo)致該層的一部分從計(jì)算限制更改為內(nèi)存限制,使得每層可獲得的性能都比iSmart3-SkyNet高。

圖5 優(yōu)化后加速器上的SkyNet Roofline模型分析

圖6 iSmart3和Skrskr加速優(yōu)化前后性能對(duì)比

為了更好地說明本文優(yōu)化方法在低功耗目標(biāo)檢測(cè)方面的性能改進(jìn),分別選擇了iSmart3-SkyNet和SkrSkr-SkyNet作為基準(zhǔn)模型。本文iSmart3-SkyNet和Skrskr-SkyNet中提出的方法的有效性如圖6所示,其中它們的性能(包括延遲和能量)被標(biāo)準(zhǔn)化為1。與iSmart3-SkyNet和SkrSkr-SkyNet相比,使用預(yù)加載的工作流方法處理1000幅圖像,分別可以將運(yùn)行時(shí)間減少約4.44%和1.11%,并將能耗分別減少13.27%和3.45%。當(dāng)處理的圖像數(shù)量增加時(shí),預(yù)加載工作流程可以減少更多的運(yùn)行時(shí)間和能耗。對(duì)于iSmart3和Skrskr,可調(diào)節(jié)循環(huán)次數(shù)方法的運(yùn)行時(shí)間分別減少了1.78%和3.10%,能耗分別減少了12.92%和11.29%??紤]到可調(diào)節(jié)循環(huán)計(jì)數(shù)僅應(yīng)用于前兩個(gè)PWC層,因此更改為合適的網(wǎng)絡(luò)模型將獲得更顯著的效果。對(duì)于iSmart3,可堆疊共享PE減少了10.87%的運(yùn)行時(shí)間和16.07%的能耗。對(duì)于Skrskr,可堆疊共享PE減少了5.49%的運(yùn)行時(shí)間和13.55%的能量。由于內(nèi)存的限制,運(yùn)行時(shí)間的減少并不重要。但是,由于減少了計(jì)算資源的消耗,因此能源的節(jié)省非常重要。通道增強(qiáng)方法具有最大的改進(jìn),可以減少Skrskr和iSmart3的運(yùn)行時(shí)間10.85%和17.98%。它們的功耗降低了約1/4。通道增強(qiáng)不僅可以提高硬件資源的利用率,而且可以大大提高加載圖像的帶寬。將所有優(yōu)化方法應(yīng)用于SkrSkr,運(yùn)行時(shí)間縮短了30.29%,能耗降低了35.49%。iSmart3的改進(jìn)更加明顯,運(yùn)行時(shí)間縮短了35.98%,能耗降低了52.06%。

與之前的DAC-SDC目標(biāo)檢測(cè)加速器相比,結(jié)果如表2所示。與iSmart3- SkyNet相比,Skrskr-SkyNet使用了更有效的量化,這也使得Skrskr的GOPS/W值為iSmart3的2.24倍,準(zhǔn)確率也因?yàn)镈WC使用了線性緩沖區(qū)從0.716增加到0.731。根據(jù)第3節(jié)所述的優(yōu)化策略,可以在不改變量化方法的情況下對(duì)每個(gè)加速器進(jìn)行進(jìn)一步優(yōu)化?;趇Smart3改進(jìn)的SEUer A型不僅由于行緩沖區(qū)使精度提升到0.724,GOPS/W和Energy/Picture還分別優(yōu)化了1.85倍和2.14倍。基于Skrskr改進(jìn)的SEUer B型幀率從52.429提高到78.576,功耗降低了近1/2。此外,SEUer B型的GOPS/W和Energy/Picture分別比Skrskr增加了1.5倍和1.9倍。

表2 優(yōu)化策略效果對(duì)比

5 結(jié)束語

本文利用Roofline模型對(duì)深度可分離卷積進(jìn)行分析,然后面向低功耗目標(biāo)檢測(cè)提出了DNN加速芯片的優(yōu)化策略,包括可堆疊共享PE、可調(diào)節(jié)循環(huán)次數(shù)、通道增強(qiáng)和預(yù)加載工作流等優(yōu)化措施,通過選擇iSmart3-SkyNet和Skrskr-SkyNet作為基礎(chǔ)網(wǎng)絡(luò),F(xiàn)PGA驗(yàn)證效果顯著。對(duì)于iSmart3-SkyNet,本文提出的方法可以增加精度并提高能效;對(duì)于Skrskr-SkyNet,本文基于提出的優(yōu)化策略所設(shè)計(jì)的加速器以78.576 fps的速度和0.068 J/圖像的速度進(jìn)行計(jì)算,性能超過2020年DAC低功耗目標(biāo)檢測(cè)國(guó)際頂尖競(jìng)賽第1名UltraNet,目前在此類目標(biāo)檢測(cè)加速器設(shè)計(jì)領(lǐng)域處于較為領(lǐng)先地位。

猜你喜歡
計(jì)算資源加速器低功耗
輪滑加速器
化學(xué)工業(yè)的“加速器”
全民小康路上的“加速器”
一種高速低功耗比較器設(shè)計(jì)
基于模糊規(guī)劃理論的云計(jì)算資源調(diào)度研究
改進(jìn)快速稀疏算法的云計(jì)算資源負(fù)載均衡
基于Wi-Fi與Web的云計(jì)算資源調(diào)度算法研究
耦合分布式系統(tǒng)多任務(wù)動(dòng)態(tài)調(diào)度算法
等待“加速器”
ADI推出三款超低功耗多通道ADC
兰溪市| 昭觉县| 容城县| 张家口市| 通州区| 元阳县| 姜堰市| 红河县| 安陆市| 阿克| 青岛市| 青铜峡市| 西华县| 礼泉县| 徐州市| 陆丰市| 二手房| 五台县| 朝阳区| 怀安县| 新和县| 田东县| 罗山县| 海盐县| 互助| 鹤庆县| 泌阳县| 大丰市| 民乐县| 通山县| 藁城市| 柳州市| 安丘市| 扎赉特旗| 江门市| 鄯善县| 桂平市| 潼南县| 伊金霍洛旗| 思南县| 喜德县|