日前,人工智能領(lǐng)域的芯片性能權(quán)威榜單MLPerf又有了最新的跑分結(jié)果,這次的更新主要在推理部分,尤其是邊緣計算推理(MLPerf edge inference)和超低功耗推理(MLPerf tiny)反映了芯片行業(yè)新老巨頭(如Nvidia,高通和阿里巴巴等)在相關(guān)方向的最新成果,本文將為讀者詳細分析。
MLPerf的背景
隨著人工智能的發(fā)展,相關(guān)芯片對于人工智能相關(guān)應(yīng)用的計算能力也成為了一個重要的芯片性能指標(biāo)。在人工智能芯片剛剛興起時,不同的公司往往會展示一個對于自己最有利的性能結(jié)果,但是不同家芯片公司之間的數(shù)字很難直接比較,例如公司A在1比特量化的ResNet上的延遲結(jié)果很難和公司B在32位浮點精度VGGNet的結(jié)果直接作比較。
為了解決這個問題,機器學(xué)習(xí)硬件相關(guān)的行業(yè)組織ML Commons專門推出了一個MLPerf跑分平臺,在這個平臺上ML Commons給出了在一系列主流任務(wù)上的代表性模型,并且定義了這些模型的各種細節(jié)(例如預(yù)測精度,量化方法等),各大公司可以在自己的芯片上運行這些模型并且提交結(jié)果,而結(jié)果經(jīng)過ML Commons驗證后就會正式公布在MLPerf的榜單上面。
目前,MLPerf榜單主要分為幾個子榜單:數(shù)據(jù)中心訓(xùn)練,數(shù)據(jù)中心推理,邊緣推理(MLPerf Edge inference),移動設(shè)備推理以及低功耗推理(MLPerf Tiny)。其中,這次我們著重介紹新分數(shù)的邊緣推理主要是針對邊緣服務(wù)器高算力的場景(例如自動駕駛),而低功耗推理則是針對物聯(lián)網(wǎng)應(yīng)用進行較低功耗人工智能計算(功耗遠小于移動設(shè)備)的場景。
邊緣推理新格局
邊緣推理應(yīng)用在最近兩年得到了非常多的關(guān)注。邊緣計算推出的初衷是針對機器人、5G等需要大算力低延遲應(yīng)用,而目前得到關(guān)注的最主要原因是智能駕駛中需要使用的邊緣計算正在走入主流,因此針對智能駕駛的邊緣計算可望成為下一個半導(dǎo)體芯片的重要市場,從而吸引了業(yè)界各大公司的目光。
從競爭格局來看,針對邊緣場景的人工智能計算,Nvidia是布局最久的,幾乎從2016年就開始不斷推出和迭代相關(guān)芯片來保持自己在該領(lǐng)域的領(lǐng)先位置,在MLPerf推出的初期在邊緣計算領(lǐng)域常常也是Nvidia一直領(lǐng)跑。然而,從去年開始,我們看到高通憑借其Cloud AI系列適合邊緣計算場景的計算加速卡也成為了這個領(lǐng)域的一個重量級競爭者。
在最近剛剛公布的MLPerf最新跑分結(jié)果中,我們也看到Nvidia和高通成為了邊緣計算結(jié)果的最大亮點。首先,Nvidia發(fā)布了最新的Orin系列SoC的跑分結(jié)果,相對于上一代產(chǎn)品Xavier有了三到五倍的性能提升。Orin SoC是Nvidia針對機器人和自動駕駛等場景量身定制的設(shè)計,Orin SoC中包括了CPU、GPU、人工智能加速器(DLA)和其他視覺相關(guān)加速器IP,從而能確保該SoC可以高效地執(zhí)行各類相關(guān)任務(wù)。在這次公布的MLPerf相關(guān)分數(shù)中,Nvidia也指出這些模型運行在SoC的GPU和DLA中,而并不是只運行在一個IP中,從而能實現(xiàn)更高的性能。
高通的亮點則主要在于我們看到了越來越多的公司在使用其Cloud AI 100加速卡。自從去年九月高通首先上傳了自己使用Cloud AI 100的結(jié)果后,在這次我們看到了除了高通之外,還有技嘉、阿里巴巴以及KRAI等公司都提交了使用Cloud AI 100的跑分結(jié)果,可見該加速卡已經(jīng)在慢慢得到各大系統(tǒng)廠商的認可。
那么Nvidia Orin和高通Cloud AI 100相比如何呢?首先,這兩款芯片都適合使用在邊緣計算場景,Orin的整體系統(tǒng)功耗在15-40W,而高通加速卡的功耗也在15 – 20W(注意Orin是SoC,功耗也包括處理器部分,而高通的加速卡還需搭配主處理器才能工作),可以說總體功耗都很接近。從MLPerf的最新分數(shù)上來看,兩者的分數(shù)也是在伯仲之間。
高通的圖像分類任務(wù)性能和能效比都很強,在總體系統(tǒng)功耗24W的情況下運行單數(shù)據(jù)流ResNet可以實現(xiàn)0.84ms的延遲,而Orin則需要更大的功耗(42W)才能實現(xiàn)相近的延遲(0.92ms)。同時在批量處理吞吐量方面,高通的Cloud AI 100也要略勝一籌,24W系統(tǒng)功耗可以每秒處理5849張圖像,如果使用36W功耗則可以每秒處理9780張圖像;相對來說,Nvidia Orin使用42W功耗只能每秒處理4750張基于ResNet的圖像分類任務(wù)。
然而,Nvidia在物體檢測任務(wù)上性能要強于高通,Orin使用SSD模型運行物體檢測任務(wù)時延遲僅為0.59ms,而Cloud AI 100則需要1.7ms。值得注意的是,Orin和Cloud AI 100在運行批量處理物體檢測任務(wù)時的吞吐量接近(都是每秒處理5300樣本左右)。
我們認為,這樣的性能差別來自于Nvidia和高通的架構(gòu)不同。Nvidia Orin是一個SoC,并且包括了GPU這樣能較為高效靈活處理不同算子的能力,而高通的Cloud AI 100是一塊專門針對神經(jīng)網(wǎng)絡(luò)的加速卡,一些它處理不了的算子需要通過PCIe接口到主處理器上完成運算,這樣就帶來了延遲。對于圖像分類這樣幾乎所有運算都在神經(jīng)網(wǎng)絡(luò)中完成的任務(wù),高通的Cloud AI 100有優(yōu)勢,且可以實現(xiàn)非常高的能效比;但是在物體檢測任務(wù)中,有一些非標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)算子,這時候能夠較為靈活處理各類算子的Nvidia Orin在延遲方面就有較大優(yōu)勢了。
事實上,Nvidia和高通也代表了兩種不同的設(shè)計思路,即靈活支持各種算子的SoC和為一大類算子做極致優(yōu)化的加速卡。我們認為,Nvidia會繼續(xù)這樣的思路,憑借其在軟件生態(tài)上的優(yōu)勢,以網(wǎng)絡(luò)兼容性強為主要賣點。而隨著智能駕駛等對于延遲有高需求應(yīng)用越來越重要,高通是否會為這類應(yīng)用也專門推出SoC是非常值得我們關(guān)注的。
高通在這方面并不缺乏技術(shù)能力,需要的只是為了該市場專門投入資本做SoC的決心(目前Cloud AI 100并不是專門針對邊緣計算應(yīng)用,而是同時針對云端和邊緣計算的加速卡)。如果高通也決心做相關(guān)的SoC,我們認為將會標(biāo)志著邊緣計算市場的競爭格局進入下一個階段,即有多家大公司都將在這個領(lǐng)域全力以赴投入大量資源,而這也將從另一個角度反向推動邊緣計算領(lǐng)域的發(fā)展,因為該領(lǐng)域的芯片計算預(yù)計在較為激烈的競爭格局下會更快地迭代進化。
低功耗推理:阿里巴巴展現(xiàn)人工智能實力
除了邊緣計算之外,MLperf最新分數(shù)中,低功耗推理板塊也是一個亮點因為阿里巴巴也提交了他們使用自研玄鐵芯片的結(jié)果。根據(jù)相關(guān)結(jié)果,阿里巴巴的分數(shù)大幅領(lǐng)先其他公司,而我們認為這是阿里巴巴在人工智能領(lǐng)域軟硬件結(jié)合能力的一個體現(xiàn)。
阿里巴巴提交的分數(shù)是基于其玄鐵處理器(使用RISC-V指令集架構(gòu)),該處理器上事實上并不包含專用的人工智能加速器IP,而是由模型直接跑在處理器上。另外,阿里巴巴提交的結(jié)果中,并不是對每個任務(wù)直接運行標(biāo)準(zhǔn)的模型,而是使用了阿里巴巴針對玄鐵處理器優(yōu)化過的模型(同時確保在每個任務(wù)中都能與標(biāo)準(zhǔn)模型有一樣的預(yù)測準(zhǔn)確度),因此我們認為這樣的大幅領(lǐng)先是軟硬件協(xié)同優(yōu)化的結(jié)果。我們認為,在低功耗場景中,只有使用軟硬件協(xié)同優(yōu)化才能實現(xiàn)最大程度的能效比提升,而在這個方面擁有強大人工智能研發(fā)能力的阿里巴巴就有了很大的優(yōu)勢。同時,由于阿里巴巴掌握玄鐵CPU的所有設(shè)計細節(jié),因此可以在設(shè)計相關(guān)的神經(jīng)網(wǎng)絡(luò)時候,保證模型中的算子和數(shù)據(jù)存儲都能夠最大化效率。這樣的結(jié)果無疑是令人振奮的,同時我們也希望在未來看到更多中國的芯片公司能夠在MLPerf這樣的全球舞臺上領(lǐng)跑整個領(lǐng)域。