中文題目:面向多核MCU的低延遲深度學(xué)習(xí)推理調(diào)度
論文題目:Low-Latency Deep Learning Inference Schedule on Multi-Core MCU
錄用期刊/會(huì)議:The International Joint Conference on Neural Networks (CCF C)
作者列表:
1)徐朝農(nóng) 中國(guó)石油大學(xué)(北京)信息科學(xué)與工程學(xué)院/人工智能學(xué)院 計(jì)算機(jī)系教師
2)劉 民 中國(guó)石油大學(xué)(北京)信息科學(xué)與工程學(xué)院/人工智能學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè) 碩21
3)孔維明 中國(guó)石油大學(xué)(北京)信息科學(xué)與工程學(xué)院/人工智能學(xué)院 計(jì)算機(jī)技術(shù)專(zhuān)業(yè) 碩21
4)李 超 之江實(shí)驗(yàn)室
文章簡(jiǎn)介:
隨著智能物聯(lián)網(wǎng)(AIoT)的持續(xù)發(fā)展,深度學(xué)習(xí)(DL)正逐漸成為其服務(wù)中不可或缺的一部分。深度學(xué)習(xí)使得智能處理和分析物聯(lián)網(wǎng)設(shè)備產(chǎn)生的大量數(shù)據(jù)成為可能,并且正成為這些系統(tǒng)的重要工具。AIoT的典型應(yīng)用包括監(jiān)測(cè)機(jī)械振動(dòng)以預(yù)測(cè)機(jī)器故障、視覺(jué)任務(wù)中的人員檢測(cè),以及實(shí)時(shí)語(yǔ)音識(shí)別等。傳統(tǒng)上,這些應(yīng)用依賴(lài)于豐富的云端或霧端計(jì)算資源來(lái)滿(mǎn)足高響應(yīng)性要求。然而,云端或霧端推理在延遲、能耗、隱私保護(hù)和通信接入等方面引入了高昂的開(kāi)銷(xiāo)。隨著AIoT 服務(wù)的急劇增加,云端或霧端推理變得過(guò)于昂貴且不可行。幸運(yùn)的是,低成本、低功耗且高性能的多核微控制器(MMCU)的出現(xiàn),使得在設(shè)備上進(jìn)行DL推理成為可能。通過(guò)充分利用硬件的資源來(lái)最小化推理延遲,深度學(xué)習(xí)推理框架可以滿(mǎn)足AIoT系統(tǒng)的高響應(yīng)性要求。目前可用的推理框架,如 TFLM、CMSIS-NN、CMix-NN 和 CIMAX-Compiler,采用了核友好的優(yōu)化措施,例如剪枝、量化和循環(huán)優(yōu)化,以減少推理延遲。盡管這些方法極大地改進(jìn)了神經(jīng)網(wǎng)絡(luò)(NN)推理性能,但它們沒(méi)有為 NN 中的每個(gè)算子選擇合適的數(shù)據(jù)布局,也沒(méi)有充分利用 MMCU 的硬件資源。因此,本文旨在研究如何為部署在 MMCU 上的 NN 選擇合適的數(shù)據(jù)布局,并充分挖掘 MMCU 的硬件資源以加速 NN 的推理過(guò)程。
摘要:
隨著基于微控制器(MCU)的智能物聯(lián)網(wǎng)(AIoT)服務(wù)的興起,深度學(xué)習(xí)(DL)被廣泛應(yīng)用以提升用戶(hù)體驗(yàn)。這類(lèi)由深度學(xué)習(xí)輔助的服務(wù)依賴(lài)于快速的神經(jīng)網(wǎng)絡(luò)(NN)執(zhí)行來(lái)實(shí)現(xiàn)高響應(yīng)性,要求小型物聯(lián)網(wǎng)設(shè)備通過(guò)有效利用其底層硬件資源來(lái)最小化 NN 的執(zhí)行延遲。然而,現(xiàn)有的推理框架無(wú)法為多核微控制器(MMCU)實(shí)現(xiàn)令人滿(mǎn)意的實(shí)時(shí)性能。我們指出可以通過(guò)兩種改進(jìn)方法來(lái)加速NN推理:1) 為 NN 中的每個(gè)算子選擇合適的數(shù)據(jù)布局;2) 通過(guò)適當(dāng)?shù)貙⒚總€(gè)算子分配到多個(gè)核上來(lái)發(fā)揮 MMCU 的能力。
在本文中,我們提出了一種針對(duì) MMCU 的低延遲深度學(xué)習(xí)推理的新思路,即聯(lián)合數(shù)據(jù)布局和算子內(nèi)并行性(IOP)。我們基于自建的延遲預(yù)測(cè)器來(lái)建模這一問(wèn)題,該預(yù)測(cè)器能預(yù)測(cè)每個(gè)NN 算子的執(zhí)行延遲。此外,我們提出了一個(gè)時(shí)間復(fù)雜度為
的算法,以尋找最優(yōu)的調(diào)度計(jì)劃,其中
和
分別代表算子可能的最大布局?jǐn)?shù)和 IOP 策略數(shù)。實(shí)驗(yàn)評(píng)估結(jié)果表明,我們的調(diào)度計(jì)劃能為 CMSIS-NN(一種先進(jìn)的邊緣推理軟件棧)實(shí)現(xiàn)1.52倍至3.37倍的加速。此外,與最先進(jìn)的 IOP 執(zhí)行系統(tǒng)相比,我們的調(diào)度計(jì)劃大約實(shí)現(xiàn)了1.67倍的加速。
主要內(nèi)容:
本研究的目的是充分利用MMCU的硬件資源加速計(jì)算圖
的推理。由于張量數(shù)據(jù)布局和IOP策略極大地影響了每個(gè)算子的推理延遲,因此,我們將這個(gè)問(wèn)題構(gòu)建為一個(gè)聯(lián)合優(yōu)化問(wèn)題,將推理調(diào)度策略
作為控制變量。因此,該問(wèn)題可建模為:

為求解該問(wèn)題,本文提出節(jié)點(diǎn)消除和邊消除技術(shù)簡(jiǎn)化原計(jì)算圖,如圖1所示。
節(jié)點(diǎn)消除:如果計(jì)算圖
的節(jié)點(diǎn)
僅有一條入邊
和一條出邊
,且它們所對(duì)應(yīng)張量的布局轉(zhuǎn)換開(kāi)銷(xiāo)矩陣為
和
,那么節(jié)點(diǎn)消除技術(shù)可以從
中移除
、
和
并插入新邊
,其所對(duì)應(yīng)張量的布局轉(zhuǎn)換開(kāi)銷(xiāo)矩陣是:

邊消除:如果計(jì)算圖
有兩條同源節(jié)點(diǎn)和目的節(jié)點(diǎn)的邊
和
,且它們所對(duì)應(yīng)張量的布局轉(zhuǎn)換開(kāi)銷(xiāo)為
和
,那么邊消除技術(shù)可以移除
和
并插入
,該新邊所對(duì)應(yīng)的張量的布局轉(zhuǎn)換開(kāi)銷(xiāo)矩陣為:

圖 1 節(jié)點(diǎn)消除和邊消除
通過(guò)節(jié)點(diǎn)和邊的消除,我們可以得到一個(gè)通常只包含兩個(gè)節(jié)點(diǎn)的簡(jiǎn)化計(jì)算圖
。因此,在常數(shù)時(shí)間復(fù)雜度內(nèi),我們可以得到簡(jiǎn)化計(jì)算圖
的最優(yōu)推理調(diào)度策略。隨后,我們通過(guò)反轉(zhuǎn)節(jié)點(diǎn)消除和邊消除的過(guò)程即可獲得被消除節(jié)點(diǎn)的最優(yōu)推理調(diào)度策略。最終,我們可以得到原計(jì)算圖
的最優(yōu)推理調(diào)度策略
。
此外,我們?yōu)槌R?jiàn)的神經(jīng)網(wǎng)絡(luò)算子(如,矩陣乘法、卷積和池化等)建立了即輕量又準(zhǔn)確的時(shí)延模型,以量化NN的不同推理調(diào)度策略所對(duì)應(yīng)的推理延遲。
單核MCU的標(biāo)準(zhǔn)卷積算子的推理時(shí)延
可以通過(guò)公式(5)建模。
單核MCU的深度卷積算子的推理時(shí)延
可以通過(guò)公式(6)和公式(7)進(jìn)行建模。

對(duì)于其它算子的單核MCU時(shí)延模型,如果算子基于GEMM實(shí)現(xiàn),則該算子的時(shí)延模型與標(biāo)準(zhǔn)卷子算子的時(shí)延模型類(lèi)似;如果算子直接基于BEU實(shí)現(xiàn),則該算子的時(shí)延模型與深度卷積算子的時(shí)延模型類(lèi)似?;谏鲜鰡魏薓CU的時(shí)延模型,我們可以通過(guò)公式(8)得到MMCU的算子時(shí)延模型。

基于上述算法和延遲預(yù)測(cè)模型,我們?cè)贑MSIS-NN上實(shí)現(xiàn)了一個(gè)算子內(nèi)并行推理框架CoMCU。
實(shí)驗(yàn)結(jié)果及分析:

圖 2不同NNs采用不同推理調(diào)度策略時(shí)在STM32H745平臺(tái)上的推理延遲
我們首先在同構(gòu)雙核微控制器STM32H745上評(píng)估CoMCU的性能,如圖2所示。從圖中可以看出,相較于利用單核MCU進(jìn)行模型推理的CMSIS-NN,CoMCU可以實(shí)現(xiàn)1.6倍的推理加速。此外,相較于現(xiàn)有的IOP系統(tǒng),CoMCU也能夠?qū)崿F(xiàn)1.7倍左右推理加速。

圖 3 不同NNs采用不同推理調(diào)度策略時(shí)在STM32WL55JC平臺(tái)上的推理延遲
其次,我們也在異構(gòu)雙核微控制器STM32WL55JC上評(píng)估了CoMCU,如圖3所示。

圖 4 CoMCU與CoDL-like的IOP策略性能比較

圖 5 CoMCU布局優(yōu)化策略與貪心式布局優(yōu)化策略的性能比較
此外,我們分別評(píng)估了CoMCU的IOP優(yōu)化和數(shù)據(jù)布局優(yōu)化的性能,如圖4和圖5所示。從圖中可以看出,CoMCU的兩種優(yōu)化技術(shù)能夠分別實(shí)現(xiàn)1.4倍和1.2倍左右的推理加速。

最后,我們?cè)u(píng)估了CoMCU的延遲預(yù)測(cè)模型的性能,如上圖所示。由于該延遲預(yù)測(cè)模型考慮了MMCU的平臺(tái)特性,因此能夠?qū)崿F(xiàn)93%以上的準(zhǔn)確率。
結(jié)論:
本文分析了數(shù)據(jù)布局和IOP對(duì)算子推理性能的影響,并將神經(jīng)網(wǎng)絡(luò)中算子的數(shù)據(jù)布局優(yōu)化和IOP優(yōu)化視為一個(gè)聯(lián)合優(yōu)化問(wèn)題進(jìn)行考慮。為了解決這一問(wèn)題,我們將其建模為公式(1),并構(gòu)建了一個(gè)準(zhǔn)確率約94%的延遲預(yù)測(cè)器以定量評(píng)估不同數(shù)據(jù)布局和IOP策略下的NN推理延遲。此外,我們提供了一個(gè)基于該預(yù)測(cè)器的動(dòng)態(tài)規(guī)劃算法以在公式(1)下找到最優(yōu)的調(diào)度方案。我們基于此算法和最先進(jìn)的邊緣推理框架CMSIS-NN實(shí)現(xiàn)了端到端的CoMCU框架,并對(duì)其進(jìn)行了評(píng)估。實(shí)驗(yàn)結(jié)果表明,與CMSIS-NN相比,CoMCU能夠?qū)崿F(xiàn)1.52倍至 3.37倍的加速,并且與最先進(jìn)的 IOP 執(zhí)行系統(tǒng)相比,其性能達(dá)到了1.67倍加速。
通訊作者簡(jiǎn)介:
徐朝農(nóng),博士,中國(guó)石油大學(xué)(北京)信息科學(xué)與工程學(xué)院/人工智能學(xué)院博士生導(dǎo)師,主要研究方向?yàn)闊o(wú)線(xiàn)通信、智慧物聯(lián)網(wǎng)、邊緣智能、嵌入式系統(tǒng)。