1:AI芯片分類
市場上很多AI芯片,令人眼花繚亂。
根據(jù)其應(yīng)用范圍,大體上可以分為幾類
終端AI芯片:終端AI芯片要求功耗低,算力需求也相對較低,主要是AI推理的應(yīng)用。終端AI芯片以各種帶AI模塊的MCU來呈現(xiàn),專注于某一類應(yīng)用,例如,智能音箱里面的AI芯片,可以用于語音識別。智能門鎖的AI芯片,可以人臉識別等等
云端AI芯片:云端AI芯片則是數(shù)據(jù)中心,用于云端AI加速,不但可以推理也可以做訓(xùn)練。例如NVIDLA的GPGPU卡,谷歌的TPU等等。云端AI芯片性能比較強,面積也非常大,例如A100據(jù)說在7nm下有826mm2,性能也比較強悍!
除此之外,還有邊緣AI芯片。
那么邊緣AI芯片是做什么來用的。
提到邊緣計算,有一個非常有名的“章魚論”。
章魚這種生物比較奇怪,章魚有8條腿,但是章魚的某些決策不是都要放到大腦中來計算,而是在腿中就進行計算。
這個章魚腿相比于章魚大腦(云端),就是邊緣端!
這個比喻非常有趣,以至于經(jīng)常被邊緣計算的場景來引用。
例如,自動駕駛或者ADAS (智能駕駛輔助系統(tǒng)),需要在本地就把整個決策及設(shè)計完成。
有很多在需要大數(shù)據(jù)量計算但是實時性比較高,不需要繞一圈到云中心來計算的場景
例如智能駕駛,智能工廠,與安防結(jié)合交通管理等等。
相對于終端AI芯片很多消費級的場景,邊緣AI芯片更多的是工業(yè)領(lǐng)域的應(yīng)用。
邊緣AI基本上將應(yīng)用局限在某個范圍內(nèi),可以是一輛汽車,一列火車,一個工廠,一個商店。
在這個范圍內(nèi),有一些實時的AI決策及處理需求需要被滿足。
相應(yīng)的我們會把AI賦能稱之為,自動駕駛,智能制造,智慧零售等等。
其核心目的主要強調(diào)在數(shù)據(jù)來源側(cè)來解決問題。
這就是邊緣AI芯片存在的需求。
2:邊緣AI芯片特征
那么邊緣AI芯片都有什么特征?
1:算力強:邊緣AI的算力要比終端要算力更強,通常都是獨立解決問題。但是性能要比小區(qū)的人臉識別或者智能音箱這種語音識別的基于某種應(yīng)用的端側(cè)AI芯片的處理能力要強1-2個數(shù)量級。
2:外設(shè)豐富:邊緣AI基本上強調(diào)信息的可獲得性,例如多路攝像頭的輸入的需求,對于類似MIPI的接口的數(shù)量會有很大的需求,例如可以同時支持多路攝像頭等視頻音頻的輸入。
3:可編程性:邊緣AI芯片通常用面向工業(yè)用戶,需要AI賦能用戶,換言之:AI要和用戶應(yīng)用場景相結(jié)合,通常根據(jù)不同工業(yè)用戶不同的場景需要進行編程,用于適配不同的模型和場景。也不局限于某種應(yīng)用。
一個良好的可編程的架構(gòu)是解決問題的關(guān)鍵。邊緣AI芯片不是直接給工業(yè)客戶用,而是要根據(jù)工業(yè)客戶的需求進行客戶需求AI賦能,這個是邊緣AI芯片核心特征。
3:邊緣AI芯片架構(gòu)
那么邊緣AI芯片的架構(gòu)是什么樣子的?
舉個例子,邊緣AI計算平臺,JESTON 應(yīng)該算是一個。
其最新一代發(fā)布的是JESTON AGX Orin 。
JETSON作為英偉達邊緣的AI計算平臺,其名氣沒有英偉達的GPGPU大。
但是,JESTON同時繼承了Ampere的架構(gòu)的GPGPU和 ARM Cortex-A78,在邊緣側(cè)AI芯片中,既可以做推理也可以做訓(xùn)練。
作為一個邊緣AI產(chǎn)品,其有200Tops的處理性能(INT8)。
我們以JESTON AGX Orin為例,探索下其芯片內(nèi)部架構(gòu)是怎樣的。
這個芯片的計算部分主要是三大件:CPU,GPU,DSA(NVDLA+PVA)
CPU:
JESTON其內(nèi)部有3組4核的A78,頻率可以到2Ghz。也就是說,這個芯片內(nèi)部有12核的A78的處理器,不同于手機的處理器,3個cluster的A78是對稱的,不是手機處理器的大小核設(shè)計,其主要是面向計算服務(wù),而不是手機應(yīng)用中不同負載的低功耗。在一些標(biāo)量的運算中,多核A78的計算能力也是非常強悍。
GPU:
GPU是英偉達最新的安培架構(gòu),擁有2048個CUDA核,以及64個Tensor內(nèi)核。這些都可以可編程的。安培架構(gòu)是最新一代的GPGPU架構(gòu),前面幾代分別是:Kepler,Maxwell,Pascal, Volta等。最新一代的安培架構(gòu)升級了tensor core。用了安培GPU以后,與其他邊緣AI芯片不同的是,可以支持推理和訓(xùn)練。
最重要的是,這個AI芯片可以用cuda來編程了,而可編程性則是邊緣AI芯片的核心需求了。
DSA:
作為AI加速單元,JESTON本身也有另外還有2個NVDLA 的硬核,以及VISION加速器 PVA;
NVDLA主要用于推理。內(nèi)核核心還是一個大的矩陣卷積運算。
其中NVDLA已經(jīng)開源,有興趣的小伙伴可以在GITHUB上下載并運行這些源碼。詳見:nvdla· GitHub
這個可以可看到工業(yè)界的實際在用的成果開源,也對業(yè)界有很大的促進作用。
PVA用了VPU的架構(gòu),使用VLIW的架構(gòu),VLIW是超長指令字結(jié)構(gòu),其并行度比較好,VIEW架構(gòu)設(shè)計簡化了硬件結(jié)構(gòu),其二,VLIW的大位寬執(zhí)行并不會以犧牲性能和頻率為代價。但是同時將問題交給了軟件來運行。
IO資源:
除了計算資源,IO資源也比較豐富,畢竟邊緣AI側(cè),就需要的豐富的輸入,支持6個攝像頭以及16組通道的MIPI接口。
如果邊緣AI芯片選一個重要的接口,那肯定是MIPI了,畢竟,邊緣AI芯片,除了算力之外,還缺少不了的就是MIPI接口。
MIPI就是邊緣AI芯片的眼睛,(用于連接攝像頭)。畢竟和人不同,需要很多雙眼睛,畢竟邊緣AI芯片需要“眼觀六路,耳聽八方”。
只有大腦,沒有耳朵和眼睛,邊緣AI芯片是不能工作的。
同樣還有USB接口,也可以支持一些USB攝像頭。
同樣可以支持PCIe。RC和EP都支持,也就是說,可以同時作為加速卡插在別的主機上,也可以作為主設(shè)備插別的加速卡。
同時在網(wǎng)絡(luò)方面,支持4路10G口,可以實現(xiàn)高速互聯(lián),如果有需要可以實現(xiàn)高速網(wǎng)絡(luò)傳輸,或者幾個JESTON AGX的互聯(lián)。
下圖就是 JESTON AGX Orin 的詳細參數(shù),拿走不謝!
根據(jù)這些參數(shù),芯片面積小不了,我覺得這顆芯片可能是7nm的制程。才能在面積和功耗上比較平衡一下。
其典型功耗大約在15W,30W,45W幾個不同的量級上。
4:邊緣AI芯片作用
那么這么強悍性能的AI芯片能做什么?
舉個例子,現(xiàn)在疫情下,很多場所都有人流的限制(本場所限流100人!)。
小到一個商店,大到一個街區(qū)。適時獲取人流就是一個典型的任務(wù)。
通過人像識別,獲取一個區(qū)域內(nèi)的人流的密度,實時決定對區(qū)域內(nèi)人流進行管控。
如果是終端的AI的MCU,很難有很大的算力,也不同時接受多路視頻的輸入。
那邊緣端AI芯片就有了用武之地。
作為一個方案商,不但要有一個非常強勁的AI引擎,其次要有很多的視頻輸入源。
最后要通過一個非常強悍的AI框架(SDK)將這些硬件運行起來。
也就是說邊緣AI需要根據(jù)用戶對于AI的需求二次開發(fā)。
剛才提到,邊緣AI其中一個重要的特征就是,根據(jù)工業(yè)場景進行AI+場景的再開發(fā)。
很多AI芯片紙面性能很強,但是如何將這些算力轉(zhuǎn)換成用戶感知的提升,這個里面就有很多內(nèi)功可做。
因此工業(yè)用戶需要的是一個開放AI平臺,而不是一個只有算力的芯片,更重要的是要根據(jù)用戶需求進行AI業(yè)務(wù)開發(fā)。
有句古話“干活不由東,累死也無功”。
只有硬件,沒有軟件,或者軟件不好用,就好比武功只有一身招式,沒有內(nèi)功心法一樣。
AI芯片算力雖強,沒有軟件(SDK)也發(fā)揮不出來。
軟硬兼修是永遠不過時的選擇。
如何將AI算力轉(zhuǎn)換成用戶生產(chǎn)力。
在這個方面,Jeston AGX Orin提供了jetpack 5.0,支持了cuda11和最新版本的cuDNN和tensorRT。
通過這些軟件工作,特別是CUDA,這些利于用戶開發(fā)的工具將JESTON平臺上強悍的算力和豐富IO結(jié)合起來。
最終完成邊緣計算賦予AI芯片的“使命任務(wù)”。
最終用戶得到的是:用戶定義的AI芯片。
或者說是需求定義的AI芯片。
這才是邊緣AI芯片的本質(zhì)!