提示:本文為內核架構分析,需要紮實的晶元體系結構和AI演算法知識。

作為華為「很嚇人」AI戰略的重頭戲,昇騰310/910系列是拳頭產品,也寄託了華為對AI的雄心壯志。發布會上的指標很「嚇人」,但是市場上沒有任何詳細的材料,作者作為AI及晶元的深度從業者,試圖從新聞媒體上的片言隻語,分析其內核架構和性能指標,以及優勢劣勢等,以饗讀者。

1)整體性能指標分析

參考材料:

華為昇騰310晶元:為自動駕駛提供「最強算力」?

www.bjnews.com.cn
圖標

其中對於指標的描述有兩段:

"本次獲獎的昇騰310晶元,是業界面向邊緣計算場景最強算力的AI SoC(系統級晶元),可以實現高達16Tops的現場算力,支持同時識別包括車、人、障礙物、交通標誌在內的200個不同的物體;一秒鐘內可處理上千張圖片"

「上個月華為聯合奧迪展示了L4級無人駕駛的路測,汽車上配備了華為的MDC車載計算單元。根據測算,支持L4級無人駕駛這樣非常複雜的邊緣計算場景時,310晶元組一共也僅消耗200瓦的能耗」

我們看到僅有的幾個數字:16Tops,200個目標,一秒上千張圖片,200瓦能耗(不要漏掉晶元組).

我們來深度分析一下:

TOPS是指Tera Ops / Second, 是在深度學習領域的 每秒基礎運算元操作數,考慮到不同的字長和精度,操作數是有不少差別的,一般會標註字長,比如 16比特浮點,或者8比特整型,甚至於有些人用4比特整型標註。一般字長越短,精度越差,有些模型優化不好的話,4比特的精度都比傳統模型好不到哪裡去。一般業界認定最少要到8比特才能保證好的精度,當然有新的架構和演算法在用更低比特達到較好的效果,但是還沒有突破。

我們假定它是8比特,16Tops.

對比NVIDIA Xavier 性能指標

Throughput

22.6 DL TOPS 8-bit

2.8 CUDA TFLOPS FP16

1.4 CUDA TFLOPS FP32

16TOPS vs. 22.6TOPS, 看起來還好.

當然了,晶元的吞吐只是一個指標,衡量晶元架構的還要最終看 「性能功耗比」和「性能價格比」,鑒於現階段還未上市,價格也不清楚,那麼更好的指標是「性能功耗比」Perf/Watt.

注意,相對於廠商自己標註的峯值指標,對於用戶更重要的是應用性能指標,常規的測試包括各種跑分等,但是AI系統還遠未成熟,各家標註千差萬別,注水情況嚴重,有些創業公司可以標註的比實際性能高出若干倍,具體手段包括把軟體優化和模型稀疏性當成自己的指標, 然後就可以x4~x8倍的提高,把不標註計算精度等,大概類似於油耗只測下坡的,等等。

而一旦到應用指標時,由於應用又是千差萬別,各種直說幀率不說模型的,只說速度不說解析度的,就都粉末登場。

其實很簡單的測試指標,就是標註標準模型(比如常用的VGG,ResNet18,34,50,70, YOLO, SSD等),在標準輸入情況下的處理幀率,就可以給出最直接的對比。

那麼我們回過頭來看看華為的宣稱:

200個目標,一秒上千張圖片。

注意:多個目標是大部分模型單幀處理,跟計算能力無關,2000個目標也能出來,只要輸入數據有就好。每秒上千張圖片,具體是那個模型?如果這兩個放在一起,我們可以假定是某個目標檢測模型,比如YOLO? 如果是YOLO, 每秒 1000幀。

標準YOLO V2計算需求是 8.52GOPS(參考: ImageNet Classification),如果按照1000fps,整體的實際計算力為

8.52GOPS*1000=8.52TOPS.

實際利用率為 8.52TOPS/16TOPS = 53%.

看起來很美好!

且慢,在參考的ImageNet Classification裡面,還有一個列,以nvidia titanx 為標準,這款單精度計算力為 11TOPS的GPU,yolo v2 單幀的處理時間為4.8ms,幀率為1000/4.8 =208fps 也就意味著利用率為

208*8.52/11000= 16%

這是一款有著 3584 個流處理器,內存帶寬達到恐怖的505GB/s的GPU,利用率居然差了3倍,看起來有點點嚇人了。

而以效率著稱的 nvidia P4, 優化後int8 計算力為 22TOPS, Yolo V2 全力才能跑到510幀,同樣的利用率是

8.52*510/22000=19.8%

提升一點點。

華為這麼巨大的利用率提升,一定要有很強的架構功力纔行。而伴隨著絲絲的「Too good to be true」的感覺,我再把目光放在了最後一項指標:200W功耗!

如果我們計算一下能量利用率:(perf/W), 以華為

16TOPS/200W = 80GOPS/Watt,

而 NVIDIA P4

22TOPS/65W=338GOPS/Watt

P4的能量利用率是 昇騰310 的 4倍!

多麼巨大的反差!!多麼詭異的數據!!

以極差的能量利用率,200W功耗纔有16TOPS的計算力,而利用率居然超級好,這麼矛盾的統一體,居然發生在一款晶元身上,說不通啊。是有蹊蹺~

必須是某個數據發生了問題,可是問題在哪裡呢?是我算錯了麼?還是報道錯誤,還是華為就是搞了一個巨差和巨好的矛盾統一體?層層撥開數字,就會有很多細節暴漏出來~

下回繼續分析,到底是哪裡出了問題~

推薦閱讀:

相關文章