本站小編為你精心準備了可重構電路圖編譯器設計分析參考范文,愿這些范文能點燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
【摘要】本文基于AI領域面向終端應用中使用非常廣泛的CNN推理算法,以FPGA可重構電路芯片為硬件載體,設計一款可重構電路的圖編譯器,用來實現(xiàn)特定CNN網(wǎng)絡定制加速的功能,最大化的提高硬件電路利用效率。
目前硬件加速器中,分為如下幾大派別:(1)采用NVIDIA公司的云產(chǎn)品,但是功耗太高,延遲很大,在端側無法應用。(2)采用AI芯片,苦于算法還在不斷更新中,流片成本和風險高。(3)采用可重構電路結構,那就是FPGA芯片作為加速電路,F(xiàn)PGA加速電路本身具有一定的重構能力,但是面對眾多類型的神經(jīng)網(wǎng)絡,最常用的屬于CNN卷積神經(jīng)網(wǎng)絡,因此我們把目光投向了CNN神經(jīng)網(wǎng)絡的推理加速任務上。考慮到CNN推理加速網(wǎng)絡,模型也繁多,如果做到既能考慮FPGA芯片的靈活性,又能準確適配各種神經(jīng)網(wǎng)絡,面對這種需求和難點,本文提出了一種電路可重構的圖編譯器架構,對CNN神經(jīng)網(wǎng)絡進行適配和優(yōu)化,然后生成一組配置CNN加速器的參數(shù)接口,方便調(diào)度CNN加速器進行離線推理加速。
1CNN推理算法原理
CNN推理算法大部分是大量的密集乘加計算,該算法包括計算量最密集的卷積層、Relu激活層,池化層以及全連接層等信息。這里定義不同類別的層,命名為算子。面對大量的算子,每層算子中參數(shù)不一致等情況,國內(nèi)外頂尖公司提出了TensorFlow、Caffe,Torch等深度學習平臺,將深度學習網(wǎng)絡層進行抽象和封裝,方便研發(fā)人員使用平臺,將權重信息,配置文件以及輸入圖像FeatureMaps信息導入到平臺后,即可進行大面積計算,這種方式適合GPU、CPU等平臺芯片產(chǎn)品,對于FPGA芯片來說,直接移植平臺架構會導致FPGA芯片利用率偏低,因此本文提出了電路可重構圖編譯器CRGC,目的在于將CNN網(wǎng)絡層數(shù)進行抽象化、網(wǎng)絡優(yōu)化、數(shù)據(jù)量化、寄存器指令流生成等方式,最后得到能方便做FPGA加速的參數(shù)堆。一種可重構電路圖編譯器設計文/邱超1馮肖雄2本文基于AI領域面向終端應用中使用非常廣泛的CNN推理算法,以FPGA可重構電路芯片為硬件載體,設計一款可重構電路的圖編譯器,用來實現(xiàn)特定CNN網(wǎng)絡定制加速的功能,最大化的提高硬件電路利用效率。摘要除了配置FPGA對CNN網(wǎng)絡加速的參數(shù)外,還要配置FPGA電路可重構的參數(shù)信息,這樣能夠最大性能挖掘FPGA天然的電路可重構特性,接下來會重點介紹。
2電路可重構圖編譯器實現(xiàn)結構
2.1工作流程
電路可重構圖編譯器的重點在于,不僅需要配置CNN每層網(wǎng)絡信息,內(nèi)存分配信息,定點化信息等參數(shù)數(shù)據(jù)。更為關鍵的是還提供了針對CNN加速器硬件ZCNNA的電路重構指令。接下來參考圖1的流程,重點介紹圖編譯器的工作流程。當外部權重數(shù)據(jù)、FeatureMap數(shù)據(jù)輸入到圖編譯器時,首先需要經(jīng)過參數(shù)解析模塊,將參數(shù)、權重信息進行抓取,解析來進行網(wǎng)絡層優(yōu)化工作,具體優(yōu)化方法后文會介紹。網(wǎng)絡優(yōu)化結束后,進行網(wǎng)絡參數(shù)的定點化,主要包括權重和FeatureMap兩類信息。接下來是寄存器配置流生成模塊,這部分包括網(wǎng)絡參數(shù)信息和可重構電路信息參數(shù),可重構電路信息參數(shù)有,卷積核的KernelSize層信息,是否有Pooling層信息,是否有FC全連接層信息等模塊,F(xiàn)PGA會根據(jù)生成的配置信息,針對特定的網(wǎng)絡,生成不同的電路結構,進而最大化提升電路工作效率,并且達到降低功耗的目的。
2.2網(wǎng)絡優(yōu)化
CNN加速器平臺中,優(yōu)化的任務分成前端軟件優(yōu)化和后端電路優(yōu)化兩種,本節(jié)介紹軟件優(yōu)化的方法。一般Conv卷積層后面的Relu層、Norm層等信息,可以通過合并的方法,直接合成Conv層,通過這種方式再網(wǎng)絡送給硬件加速器FPGA之前,達到了預處理加速的效果,從源頭上節(jié)省了計算量和帶寬開銷。
3結論
本文提出了基于電路可重構方式的圖編譯器框架,與GPU、ASIC、CPU等實現(xiàn)CNN的硬件加速相比,充分發(fā)揮了FPGA電路可重構的技術優(yōu)勢,針對特定網(wǎng)絡生成定制化電路結構,峰值算力得到了很大提升,功耗也得到了有效降低,是一種非常高效的技術手段。
作者:邱超 馮肖雄 單位:中興通訊股份有限公司技術規(guī)劃部