99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

2020DAC- SDC冠軍作品分享,充分結(jié)合FPGA數(shù)據(jù)流架構(gòu)的優(yōu)勢

FPGA之家 ? 來源:PYNQ開源社區(qū) ? 作者:PYNQ開源社區(qū) ? 2021-05-27 17:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果說上期SkrSkr隊伍的設(shè)計像是德智體美勞全面發(fā)展的“五好學(xué)生”,那么冠軍隊伍的設(shè)計則更像是“不偏科的特長生”。

作品跳出前兩屆Top3隊伍的設(shè)計思路,充分結(jié)合FPGA數(shù)據(jù)流架構(gòu)的優(yōu)勢,逐步優(yōu)化設(shè)計,最終在幀率上達到212fps,首次參賽一舉奪魁。

作品全HLS設(shè)計,采用PYNQ框架,其提高幀率的優(yōu)化流程在其他HLS設(shè)計中亦值得借鑒。

01

DAC-SDC賽事回顧

從2018年設(shè)立DAC-SDC開始,每年都會吸引全球百支知名研究團隊參與角逐,與計算機視覺類的國際知名目標檢測比賽不同,DAC-SDC對高精度、高效率的追求不僅僅停留在算法層面,其更注重考察基于軟硬件協(xié)同的系統(tǒng)構(gòu)建能力,即參賽設(shè)計不僅要提高復(fù)雜場景中小物體精準檢測的能力,還需要考慮整個硬件系統(tǒng)在圖像處理速度和功耗方面的要求。而且隨著技術(shù)迭代速度的加快,該賽項的平臺和要求也在不斷改進。2018、2019年該賽項由Nvidia、Xilinx 和 DJI 大疆創(chuàng)新贊助,賽項分為GPU和FPGA兩個方向。2020年只保留了FPGA方向。從選用平臺的角度來對比,2018年以Zynq7020作為目標平臺;2019年選用邏輯資源較多的ZU3作為目標平臺,邏輯資源的增加提升了大賽的可發(fā)揮空間。2020年仍延用19年的目標平臺Ultra96。關(guān)于賽事詳情請參考 快訊|中國團隊包攬頂會DAC-SDC競賽冠亞軍

2018年比賽情況

TX2 GPU和Zynq7020 的對比結(jié)果顯示,在同等精度條件下FPGA的處理速度較低,但FPGA平臺所需的功耗僅為GPU平臺的不到1/4。在2018年的設(shè)計中,Top3均采用了“自頂向下”的DNN設(shè)計思路(沿用目標檢測常規(guī)算法),而后再考慮算法在硬件層面的優(yōu)化。其中FPGA組的冠軍來自清華大學(xué)汪玉教授團隊,其采用了深鑒科技的硬件加速器架構(gòu) DPU、全棧式工具鏈 DNNDK 和深度壓縮技術(shù)的基礎(chǔ)上,從算法、軟件和硬件對整個目標檢測系統(tǒng)進行了全棧式的協(xié)同優(yōu)化。通過采用硬件友好的 SSD 網(wǎng)絡(luò)和多線程優(yōu)化技術(shù),結(jié)合深度壓縮和定點訓(xùn)練,在保證識別精度的前提下,滿足了低功耗和實時性的要求。

2019年比賽情況

FPGA組升級到邏輯資源較多的ZU3(Ultra96)平臺。與2018年相比,在精度和速度方面的表現(xiàn)均有一定的提升。特別值得一提的是,2019年 GPU和FPGA的冠軍來自同一團隊,其由UIUC Deming Chen教授課題組聯(lián)合了 IBM、Inspirit IoT和新加坡 ADSC 的研究人員組成。該網(wǎng)絡(luò)架構(gòu)采用“自底向上”的DNN設(shè)計思路,以硬件資源限制為約束進行網(wǎng)絡(luò)結(jié)構(gòu)搜索得到架構(gòu)的優(yōu)化設(shè)計,而后將其部署在目標平臺上。因此,冠軍團隊的工作實質(zhì)上是同一網(wǎng)絡(luò)架構(gòu)(SkyNet)在不同平臺的優(yōu)化設(shè)計實現(xiàn)。

縱觀前兩年的工作,2018年解決的問題主要集中在限定資源條件下如何部署DNN模型;2019年冠軍組的工作則體現(xiàn)了限定資源條件下如何搜索最優(yōu)模型架構(gòu)。上述工作更多考慮的是算法的本身和資源的約束,而沒有充分發(fā)揮FPGA平臺自身優(yōu)勢。

02

我們的工作

基本設(shè)計思路

我們團隊主要從FPGA的架構(gòu)特點入手對任務(wù)處理進行優(yōu)化設(shè)計。FPGA的優(yōu)勢在于其靈活、高效地并行化設(shè)計架構(gòu),適于處理流式、計算密集型任務(wù),適于不同字節(jié)寬度的調(diào)節(jié)等。針對本賽項待處理的目標檢測任務(wù)特點,我們選用了卷積神經(jīng)網(wǎng)絡(luò)算法,其中包含多層結(jié)構(gòu),需要依次計算各層,且計算密集。結(jié)合待處理任務(wù)的特點,為了充分發(fā)揮FPGA的優(yōu)勢,我們提出了以下設(shè)計思路:

l 算法設(shè)計優(yōu)化:壓縮神經(jīng)網(wǎng)絡(luò)的參數(shù)量,且采用低bit量化技術(shù),使得參數(shù)量較少且每個參數(shù)所需要的儲存空間減少,從而使所有的參數(shù)能夠置于FPGA片內(nèi)BRAM中,減少加速過程中參數(shù)頻繁調(diào)入/出帶來的開銷。

l 硬件設(shè)計優(yōu)化:基于FPGA資源構(gòu)建高效流水結(jié)構(gòu),將卷積神經(jīng)網(wǎng)絡(luò)中的所有層都置于片上,使得所有層能夠以流水線的形式并行進行計算;設(shè)計高效的低bit的矩陣計算單元,在有限資源的約束下最大化并行度。

基于上述設(shè)計構(gòu)想,數(shù)據(jù)輸入加速器能直接輸出計算結(jié)果,中間結(jié)果不必搬運到外部RAM,減少了不必要的時延和能耗。低bit計算減少了單個計算單元的資源開銷,從而提高了整體并行度,進而提高了整個神經(jīng)網(wǎng)絡(luò)計算的速率。

設(shè)計方案

1、目標檢測算法的設(shè)計

基于上述基本設(shè)計思想,我們自行構(gòu)建了適于Ultra96平臺資源限定條件的網(wǎng)絡(luò)模型。其中主干網(wǎng)絡(luò)選用類VGG架構(gòu),為了降低所需的參數(shù)量和計算量,我們嚴格控制了各層濾波器的數(shù)量,后端采用類yolo 架構(gòu)設(shè)計,整個網(wǎng)絡(luò)模型如下圖2所示。與2019年的第一名相比,我們的算法雖然精度略低,但計算量和參數(shù)量都有大幅度地降低。

2、網(wǎng)絡(luò)量化設(shè)計

量化技術(shù)是整個解決方案中重要的一個環(huán)節(jié)。我們量化了整個神經(jīng)網(wǎng)絡(luò),包括權(quán)值量化,激活量化等。量化方法如下:

782da56a-be3f-11eb-9e57-12bb97331649.png

我們對所有的權(quán)值(W)和激活后的數(shù)據(jù)進行了歸一化處理,使得所有的數(shù)據(jù)在尺度上是統(tǒng)一的。而后將權(quán)值和特征圖數(shù)據(jù)都量化到了4bit,雖然算法精度上有所降低,平均IoU從0.701降低了到0.649,但所需參數(shù)的儲存空間降為原來的八分之一。我們只需要花費0.105 MB片上空間就能將所有參數(shù)置于片上,而Ultra 96 v2板上FPGA芯片中共有0.95 MB BRAM空間。

3、 自定義數(shù)據(jù)流的AI加速器設(shè)計

根據(jù)待處理任務(wù)特點,我們基于目標平臺(Ultra96)資源特點,設(shè)計和實現(xiàn)一套“硬件函數(shù)庫”,將pytorch中的CNN算法映射到FPGA中(如下圖5)。其中,我們將pytorch中的卷積計算(Conv2d_Q)拆分成兩個部分——滑動窗口單元(SWU)和矩陣向量乘單元(MVU),SWU負責將卷積計算展開為矩陣向量計算,MVU則負責接收SWU輸出的數(shù)據(jù)流并計算。為減少片上存儲空間(緩存)使用量,我們將原CNN算法中的批正則化層(BatchNorm2d)與激活量化層(ReLu_Q)合為一個模塊Bn_Relu進行處理。為了便于構(gòu)建流水處理架構(gòu),原pytorch中采用的四個層(卷積層、批正則化層、激活量化層和池化層)就變?yōu)槲覀兌x的新四層(SWU層、MVU層、Bn_Relu層和MaxPool層),且每層中的Bn_Relu和MaxPool是可選的(圖中用虛線框標出),每層都有獨立緩存空間存儲對應(yīng)層參數(shù)。同時,為了提高效率,每層內(nèi)部也最大程度展開為流水形式。

我們將所有層都置于片上,當上一層有計算輸出時,下一層立即開始計算,各層同時運行。通過計算量分配各層所需要的邏輯資源,使得每層的時延趨向一致,使加速器運行效率最大化。

系統(tǒng)框架及優(yōu)化設(shè)計

基于上述設(shè)計思想,最終實現(xiàn)的系統(tǒng)框圖如下。其中,我們采用DMA搬運數(shù)據(jù),CPU負責任務(wù)調(diào)度工作。為了實現(xiàn)加速器IP與CPU之間的并行,我們在外部RAM中開辟了兩塊緩沖區(qū)輪流為加速器提供圖片數(shù)據(jù)。

由于計時規(guī)則在五月份做出了調(diào)整,將讀入圖片的時間和功耗也計入在內(nèi),而我們在五月版提交代碼的速度瓶頸主要卡在讀圖(Load image)時延。針對這個問題,我們對于系統(tǒng)待處理的任務(wù)重新進行了更為細致的優(yōu)化部署。由于待處理任務(wù)分為四個部分:Load image、Resize image(簡寫為Resize)、Compute CNN(簡寫為CNN)、Calculate bounding box(簡寫為Calc bbox)。我們分別在PS端進行多核并行優(yōu)化處理,在PS-PL端進行了負載均衡處理,從而優(yōu)化了任務(wù)在PS和PL端的部署,該過程對最終成績中FPS提升貢獻很大。

我們的成績

基于上述設(shè)計,最終的實現(xiàn)的加速方案性能如下:

79766830-be3f-11eb-9e57-12bb97331649.png

跟前兩年的結(jié)果相比,雖然我們的精度(IoU)略有損失,但在速度方面我們有了大幅度地提升。

03

總結(jié)

上述是我們在2020DAC-SDC中所做的一些努力。這是我們團隊第一次參加DAC-SDC國際大賽,從關(guān)注該賽項到今天,我們一邊摸索一邊前進,很感謝組委會提供了這樣的平臺給我們實踐鍛煉和摸索提升的機會。身處計算機體系結(jié)構(gòu)發(fā)展的黃金時代是我們這代人的幸運,相信未來系統(tǒng)設(shè)計必然將向著更精準、更高效、更低耗的方向邁進,我們也希望能夠通過努力與各位同仁共同見證這個時代的輝煌。同時,我們的設(shè)計也已經(jīng)開源在:https://github.com/heheda365/ultra_net

04

團隊介紹

2020DAC-SDC Top-3的BJUT_Runner團隊來自北京工業(yè)大學(xué)信息學(xué)部張文博老師和包振山老師帶領(lǐng)的異構(gòu)計算研究小組。參加本次比賽的團隊成員包括:詹康(圖中右下)、郭俊南和宋秉彥(圖中左下)。受2020年新型冠狀病毒疫情(COVID-19)影響,在整個參賽環(huán)節(jié),團隊成員一直采用在線研討方式進行溝通(下圖為本組指導(dǎo)教師和所有成員在線合影)。

原文標題:打破常規(guī),深度結(jié)合FPGA架構(gòu)優(yōu)勢|2020DAC- SDC冠軍作品開源與技術(shù)分享

文章出處:【微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責任編輯:haq

聲明:本文內(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)注

    1645

    文章

    22049

    瀏覽量

    618378
  • dac
    dac
    +關(guān)注

    關(guān)注

    44

    文章

    2410

    瀏覽量

    193710
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3688

    瀏覽量

    43825

原文標題:打破常規(guī),深度結(jié)合FPGA架構(gòu)優(yōu)勢|2020DAC- SDC冠軍作品開源與技術(shù)分享

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    FX3板是否兼容2k和4k分辨率的視頻數(shù)據(jù)流

    ,實現(xiàn)了 1920 * 1080 @ 60 fps 的設(shè)計,但現(xiàn)在我想檢查與上述更高分辨率的兼容性。 關(guān)于這一點,我有幾個問題 1.FX3 板是否兼容 2k 和 4k 分辨率的視頻數(shù)據(jù)流? 2.視頻數(shù)據(jù)流
    發(fā)表于 05-23 06:35

    通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數(shù)據(jù)流,但無法設(shè)置最小/最大比特率描述符值,怎么解決?

    我正試圖通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數(shù)據(jù)流,但無法設(shè)置最小/最大比特率描述符值,因為描述符大小只有 32 位。 描述符的預(yù)期值應(yīng)該是
    發(fā)表于 05-23 06:35

    如何使用FPGA驅(qū)動并行ADC和DAC芯片,使用不同編碼方式的ADC與DAC時的注意事項

    ADC和DACFPGA與外部信號的接口,從數(shù)據(jù)接口類型的角度劃分,有低速的串行接口和高速的并行接口。FPGA經(jīng)常用來采集中高頻信號,因此使用并行ADC和
    的頭像 發(fā)表于 03-14 13:54 ?1180次閱讀
    如何使用<b class='flag-5'>FPGA</b>驅(qū)動并行ADC和<b class='flag-5'>DAC</b>芯片,使用不同編碼方式的ADC與<b class='flag-5'>DAC</b>時的注意事項

    FPGA配置TVP5150,把PAL制標準視頻轉(zhuǎn)換成BT656數(shù)據(jù)格式,能否把數(shù)據(jù)流直接給SAA7121?

    FPGA配置TVP5150,把PAL制標準視頻轉(zhuǎn)換成BT656數(shù)據(jù)格式,請問能否把數(shù)據(jù)流直接給SAA7121這樣的編碼芯片,我這么做的,但是出來的圖像是紅色的,是不是寄存器沒配置對?還是其他什么原因?
    發(fā)表于 02-11 07:14

    使用ADS1281做調(diào)制器,兩個調(diào)制器都是輸出1位的數(shù)據(jù)流,那合并之后數(shù)據(jù)流是幾位的呢?

    ]). 現(xiàn)在有以下兩個問題: 1.兩個調(diào)制器都是輸出1位的數(shù)據(jù)流,那合并之后數(shù)據(jù)流是幾位的呢? 2.如果取所有可能的情況,Y[n]的輸出范圍就是-24~+25,這個又要怎么理解呢?
    發(fā)表于 02-05 09:10

    適用于Oracle的SSIS數(shù)據(jù)流組件:提供快速導(dǎo)入及導(dǎo)出功能

    使用SSIS 數(shù)據(jù)流組件,通過與關(guān)鍵數(shù)據(jù)庫和云服務(wù)的 Oracle 數(shù)據(jù)集成來改進您的 ETL 流程,這些組件提供快捷和可靠的數(shù)據(jù)導(dǎo)入和導(dǎo)出功能。 ? Oracle SSIS
    的頭像 發(fā)表于 01-15 10:51 ?991次閱讀
    適用于Oracle的SSIS<b class='flag-5'>數(shù)據(jù)流</b>組件:提供快速導(dǎo)入及導(dǎo)出功能

    Devart SSIS數(shù)據(jù)流組件

    Devart SSIS 數(shù)據(jù)流組件是功能強大的工具,旨在簡化 SQL Server Integration Services (SSIS) 包內(nèi)的 ETL 流程,使用戶無需編寫復(fù)雜的代碼即可
    的頭像 發(fā)表于 01-05 11:08 ?1132次閱讀
    Devart SSIS<b class='flag-5'>數(shù)據(jù)流</b>組件

    AMC1303E輸出接的Altera FPGA,通過FPGA解碼后輸出總是突然來個變異的大數(shù)據(jù),為什么?

    AMC1303E輸出接的Altera FPGA,解碼輸出后數(shù)據(jù)流總是有問題: 正常數(shù)據(jù)下,通過FPGA解碼后輸出總是突然來個變異的大數(shù)據(jù)
    發(fā)表于 12-03 07:08

    FPGA 實時信號處理應(yīng)用 FPGA在圖像處理中的優(yōu)勢

    優(yōu)勢之一是其并行處理能力。與傳統(tǒng)的CPU或GPU相比,FPGA可以同時執(zhí)行多個操作,這在圖像處理中尤為重要,因為圖像處理通常涉及大量的并行數(shù)據(jù)流和復(fù)雜的算法。例如,在進行圖像濾波或邊緣檢測時,
    的頭像 發(fā)表于 12-02 10:01 ?1814次閱讀

    DAC5675用外部時鐘,數(shù)據(jù)FPGA給,FPGA不用采集時鐘不同步發(fā)數(shù)據(jù)可以嗎?

    DAC5675用外部時鐘,數(shù)據(jù)FPGA給,FPGA不用采集時鐘不同步發(fā)數(shù)據(jù)可以嗎
    發(fā)表于 11-25 06:36

    理解ECU數(shù)據(jù)流的分析方法

    隨著汽車電子化程度的提高,ECU在車輛中扮演的角色越來越重要。它們不僅控制著發(fā)動機管理、變速箱、制動系統(tǒng)等關(guān)鍵功能,還涉及到車輛的舒適性和安全性。 ECU數(shù)據(jù)流分析的重要性 故障診斷 :通過
    的頭像 發(fā)表于 11-05 11:07 ?1215次閱讀

    請問TLV320AIC3254EVM-K怎么讀取音頻數(shù)據(jù)流?

    您好,我在學(xué)習(xí)TLV320AIC3254EVM-K開發(fā)板的過程中碰到一個這樣的問題,TI提供的軟件是否具備讀取I2S的音頻數(shù)據(jù)流的功能,或者是否有PC機軟件可以讀取音頻數(shù)據(jù)流,或者其它方法?請高手幫忙解決,萬分感謝!
    發(fā)表于 10-31 06:14

    淺談國產(chǎn)異構(gòu)雙核RISC-V+FPGA處理器AG32VF407的優(yōu)勢和應(yīng)用場景

    處理器和FPGA的配置。 高性能與低功耗 : RISC-V架構(gòu)以其低功耗和高效能著稱,而FPGA在并行處理和高性能計算方面也有顯著優(yōu)勢。兩者的結(jié)合
    發(fā)表于 08-31 08:32

    統(tǒng)一日志數(shù)據(jù)流

    統(tǒng)一日志數(shù)據(jù)流圖 日志系統(tǒng)數(shù)據(jù)流圖 系統(tǒng)進行日志收集的過程可以分為三個環(huán)節(jié): (1)日志收集和導(dǎo)入ElasticSearch (2)ElasticSearch進行索引等處理 (3)可視化操作,查詢等
    的頭像 發(fā)表于 08-21 15:00 ?573次閱讀
    統(tǒng)一日志<b class='flag-5'>數(shù)據(jù)流</b>圖

    FPGA在自動駕駛領(lǐng)域有哪些優(yōu)勢?

    領(lǐng)域的主要優(yōu)勢: 高性能與并行處理能力: FPGA內(nèi)部包含大量的邏輯門和可配置的連接,能夠同時處理多個數(shù)據(jù)流和計算任務(wù)。這種并行處理能力使得FPGA在處理自動駕駛中復(fù)雜的圖像識別、傳
    發(fā)表于 07-29 17:11