在過去十幾年里,深度神經(jīng)網(wǎng)絡(luò)(DNN)得到了廣泛應(yīng)用,例如移動手機,AR/VR,IoT和自動駕駛等領(lǐng)域。復(fù)雜的用例導(dǎo)致多DNN模型應(yīng)用的出現(xiàn),例如VR的應(yīng)用包含很多子任務(wù):通過目標檢測來避免與附近障礙物沖突,通過對手或手勢的追蹤來預(yù)測輸入,通過對眼睛的追蹤來完成中心點渲染等,這些子任務(wù)可以使用不同的DNN模型來完成。像自動駕駛汽車也是利用一系列DNN的算法來實現(xiàn)感知功能,每個DNN來完成特定任務(wù)。然而不同的DNN模型其網(wǎng)絡(luò)層和算子也千差萬別,即使是在一個DNN模型中也可能會使用異構(gòu)的操作算子和類型。
此外,Torch、TensorFlow和Caffe等主流的深度學(xué)習(xí)框架,依然采用順序的方式來處理inference 任務(wù),每個模型一個進程。因此也導(dǎo)致目前NPU架構(gòu)還只是專注于單個DNN任務(wù)的加速和優(yōu)化,這已經(jīng)遠遠不能滿足多DNN模型應(yīng)用的性能需求,更迫切需要底層新型的NPU計算架構(gòu)對多模型任務(wù)進行加速和優(yōu)化。而可重配NPU雖然可以適配神經(jīng)網(wǎng)絡(luò)層的多樣性,但是需要額外的硬件資源來支持(比如交換單元,互聯(lián)和控制模塊等),還會導(dǎo)致因重配網(wǎng)絡(luò)層帶來的額外功耗。
開發(fā)NPU來支持多任務(wù)模型面臨許多挑戰(zhàn):DNN負載的多樣性提高了NPU設(shè)計的復(fù)雜度;多個DNN之間的聯(lián)動性,導(dǎo)致DNN之間的調(diào)度變得困難;如何在可重配和定制化取得平衡變得更具挑戰(zhàn)。此外這類NPU在設(shè)計時還引入了額外的性能標準考量:因多個DNN模型之間的數(shù)據(jù)共享造成的延時,多個DNN模型之間如何進行有效的資源分配等。
目前的設(shè)計研究的方向大體可以分成以下幾點:多個DNN模型之間并行化執(zhí)行,重新設(shè)計NPU架構(gòu)來有效支持DNN模型的多樣性,調(diào)度策略的優(yōu)化等。
DNN之間的并行性和調(diào)度策略:
可以使用時分復(fù)用和空間協(xié)同定位等并行性策略。調(diào)度算法則大概可以分為三個方向:靜態(tài)與動態(tài)調(diào)度,針對時間與空間的調(diào)度,以及基于軟件或者硬件的調(diào)度。
時分復(fù)用是傳統(tǒng)優(yōu)先級搶占策略的升級版,允許inter-DNN的流水線操作,來提高系統(tǒng)資源的利用率(PE和memory等)。這種策略專注調(diào)度算法的優(yōu)化,好處是對NPU硬件的改動比較少。
空間協(xié)同定位則專注于多個DNN模型執(zhí)行的并行性,也就是不同DNN模型可以同時占用NPU硬件資源的不同部分。這要求在設(shè)計NPU階段就要預(yù)知各個DNN網(wǎng)絡(luò)的特性以及優(yōu)先級,以預(yù)定義那部分NPU硬件單元分配給特定的DNN網(wǎng)絡(luò)使用。分配的策略可以選擇DNN運行過程中的動態(tài)分配,或者是靜態(tài)分配。靜態(tài)分配依賴于硬件調(diào)度器,軟件干預(yù)較少??臻g協(xié)同定位的好處是可以更好的提高系統(tǒng)的性能,但是對硬件改動比較大。
動態(tài)調(diào)度與靜態(tài)調(diào)度則是根據(jù)用戶用例的特定目標來選擇使用動態(tài)調(diào)度或者靜態(tài)調(diào)度。
動態(tài)調(diào)度的靈活性更高,會根據(jù)實際DNN任務(wù)的需求重新分配資源。動態(tài)調(diào)度主要依賴于時分復(fù)用,或者利用動態(tài)可組合引擎 (需要在硬件中加入動態(tài)調(diào)度器),算法則多數(shù)選擇preemptive策略或者AI-MT的早期驅(qū)逐算法等。
對于定制化的靜態(tài)調(diào)度策略,可以更好的提高NPU的性能。這種調(diào)度策略是指在NPU設(shè)計階段就已經(jīng)定制好特定硬件模塊去處理特定神經(jīng)網(wǎng)絡(luò)層或者特定的操作。這種調(diào)度策略性能高,但是硬件改動比較大。
異構(gòu)NPU架構(gòu):
結(jié)合動態(tài)可重構(gòu)和定制化的靜態(tài)調(diào)度策略,在NPU中設(shè)計多個子加速器,每個子加速器都是針對于特定的神經(jīng)網(wǎng)絡(luò)層或者特定的網(wǎng)絡(luò)操作。這樣調(diào)度器可以適配多個DNN模型的網(wǎng)絡(luò)層到合適的子加速器上運行,還可以調(diào)度來自于不同DNN模型的網(wǎng)絡(luò)層在多個子加速器上同步運行。這樣做既可以節(jié)省重構(gòu)架構(gòu)帶來的額外硬件資源消耗,又可以提高不同網(wǎng)絡(luò)層處理的靈活性。
異構(gòu)NPU架構(gòu)的研究設(shè)計可以主要從這三個方面考慮:
1)如何根據(jù)不同網(wǎng)絡(luò)層的特性設(shè)計多種子加速器;
2)如何在不同的子加速器之間進行資源分布;
3)如何調(diào)度滿足內(nèi)存限制的特定網(wǎng)絡(luò)層在合適的子加速器上執(zhí)行。
審核編輯 :李倩
-
加速器
+關(guān)注
關(guān)注
2文章
826瀏覽量
39038 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4812瀏覽量
103280 -
算力芯片
+關(guān)注
關(guān)注
0文章
52瀏覽量
4786
原文標題:ADS算力芯片的多模型架構(gòu)研究
文章出處:【微信號:iotmag,微信公眾號:iotmag】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
ChatGPT背后的算力芯片

大算力芯片的生態(tài)突圍與算力革命
名單公布!【書籍評測活動NO.41】大模型時代的基礎(chǔ)架構(gòu):大模型算力中心建設(shè)指南
大模型時代的算力需求
名單公布!【書籍評測活動NO.43】 算力芯片 | 高性能 CPU/GPU/NPU 微架構(gòu)分析
【「大模型時代的基礎(chǔ)架構(gòu)」閱讀體驗】+ 未知領(lǐng)域的感受
【「算力芯片 | 高性能 CPU/GPU/NPU 微架構(gòu)分析」閱讀體驗】--全書概覽
【「算力芯片 | 高性能 CPU/GPU/NPU 微架構(gòu)分析」閱讀體驗】+NVlink技術(shù)從應(yīng)用到原理
1000TOPS背后的“大算力芯片”
AI算力研究框架(2023)

淺談為AI大算力而生的存算-體芯片

浪潮信息與智源研究院攜手共建大模型多元算力生態(tài)
科技云報到:要算力更要“算利”,“精裝算力”觸發(fā)大模型產(chǎn)業(yè)新變局?
AIGC算力基礎(chǔ)設(shè)施技術(shù)架構(gòu)與行業(yè)實踐

評論