Graphcore第二代AI晶片性能測試出爐

作者 : Challey,EDN China

最近,Graphcore公開了IPU-M2000的應用性能測試。這次Benchmark顯示,相比A100,在IPU-M2000上,ResNet的傳輸量提升了4倍,ResNeXt的傳輸量提升了5.4倍,EfficientNet的傳輸量達到了18倍,Deep Voice 3達到了13倍。

Graphcore主推的IPU在業界被稱為繼CPU、GPU以外的第三類人工智慧(AI)晶片。2019年2月,EE Times評選出「十大AI晶片新創企業」,其中來自英國的Graphcore憑藉其為AI運算而生研發的IPU獲選。同年7月,Graphcore在Bristol和北京同步推出了兩款硬體產品:第二代IPU晶片Colossus MK2 GC200 IPU (簡稱MK2 IPU),以及包含四顆MK2 IPU,可用於大規模集群系統的IPU-Machine:M2000 (IPU-M2000)。最近,Graphcore公開了IPU-M2000的應用性能測試。這次Benchmark顯示,相比A100,在IPU-M2000上,ResNet的資料傳輸量提升了4倍,ResNeXt的傳輸量提升了5.4倍,EfficientNet的傳輸量達到18倍,Deep Voice 3達13倍。

第二代IPU-M2000應用測試性能訓練

IPU-M2000是繼Nvidia的GPU和Google的TPU之後,世界上第三個公開發佈的能夠訓練BERT-Large模型的AI處理器產品,且在最近公佈的應用性能測試中表現優異。

這次發佈的IPU-M2000 Benchmark覆蓋了很多模型的訓練結果,包括典型的CV模型ResNet、基於分組卷積的ResNeXt、EfficientNet、語音模型、BERT-Large等自然語言處理模型,以及MCMC等傳統機器學習模型。其中BERT-Large這樣的大型模型或MCMC這樣的傳統模型,在一台IPU-POD64的系統級產品中訓練,相比在兩台DGX-A100上訓練,也能夠實現一定的性能效益。

最新IPU-M2000和IPU-POD的具體性能指標

下圖顯示了BERT-Large端到端的訓練時間性能,最上方的是DGX-A100的性能,端到端的訓練時間是69.5小時,訓練的資料集是維基百科的英文語料,其他訓練的參數,基本上是摘錄了Nvidia的資料。圖中下方是對2個DGX-A100和3個DGX-A100進行的一個線性擴展的估計,眾所周知,從一個系統到兩個系統到三個系統,基本是無法達到完全線性擴展,所以這邊也顯示不出A100最佳和最高的性能可能性。

圖片最下方可以看到,在IPU-POD64上,PopART BERT-Large的端到端的訓練時間只要13.2小時。如此看來,相比1個DGX-A100,BERT-Large能在IPU-POD64上實現5.3倍的提升,相比3個DGX-A100,則能夠實現1.8倍的提升。下圖右側有一個價格/功率指示性的比對關係,1個IPU-POD64和3個DGX-A100的功率和價格基本相同,但卻能夠實現接近兩倍的性能提升,這就是非常顯著的性能優勢。

推理優勢

先前,姊妹刊EE Times China曾發表過《AI的訓練與推理,會往哪個方向發展?》,文中提到:Graphcore聯合創始人暨CEO Nigel Toon數度談到AI「訓練(training)和推理(inference)技術本質上沒有什麼區別」。Toon表示:訓練和推理不應做過分嚴格的區分,未來部署機器智慧才可能是正確的方向。

以下看看第二代IPU-M2000在推理方面的優勢。

EfficientNet是2019年Google開發的一個模型。EfficientNet的模型尺寸有8個等級,B0是一個模型尺寸比較小的模型、模型尺寸最大的是B7,大概是60兆~70兆,B0是5兆的參數量級。

上圖橫坐標表示傳輸量、縱坐標表示延遲。在PyTorch和TensorFlow兩種不同的框架下,EfficientNet-B0在1台IPU-M2000上的傳輸量大概可以達到以「萬」為單位的等級,延遲遠遠小於5毫秒。而在最新的GPU上,即使在延遲最大化的情況下,它的傳輸量也遠遠小於以「萬」為單位的傳輸量等級,充分突顯了IPU所具備的延遲優勢。

圖中左上角展示了Deep Voice 3的訓練性能,該模型訓練在IPU上的傳輸量能夠達到GPU的13.6倍。右上角展示的是BERT-Large推理上的性能,在雙方都處於最低延遲的情況下,在IPU上,與A100相比,BERT-Large能夠實現3.4倍傳輸量的提升。大家可能會疑惑batch-size比較小的時候A100沒有打滿,把batch-size打大的時候、A100在batch-size可能是等於8的情況之下,它的傳輸量其實有顯著提升。圖中最上面的紅點,顯示的是該模型在IPU-M2000上的最高的傳輸量和延遲的性能,圖中可以看到該模型在IPU-M2000上的傳輸量能夠達到三千多。

圖中左下角是LSTM推理的性能展示顯示,IPU在延遲和吞吐上這兩方面都有相當優勢。右下角展示的是MCMC概率模型訓練的性能,MCMC模型是用來預測股票價格的一個評估工具。評估一支股票是不是能超出大盤的基本股價時,一般都是用一個Alpha因數表示,如圖所示,該模型的訓練在IPU-M2000上,比在最新GPU上快大概17倍。

電腦視覺

電腦視覺方面,左邊是ResNet和EfficientNet的訓練性能展示,右邊是兩個模型的推理性能展示。ResNet-50是一個中等規模的模型、擁有大概20兆的訓練參數,EfficientNet-B4也擁有大概20兆的訓練參數,兩者參數量差不多,但是它們的性能表現有所不同。訓練方面,ResNet-50相比A100,大概能實現2.6倍的性能提升,而EfficientNet相比A100能夠實現10倍左右的性能提升。這是因為ResNet-50基本上是由卷積組成的,而EfficientNet是由可分離深度卷積組成,它的卷積核比較小,在調度上的開銷和運算元的利用率在IPU上可能會有更好的實現。如果運算元小、運算元比較多,在GPU上的調度開銷也會導入跟HDM記憶體上資料交互的開銷,可能會導致了它們的性能大大的折損。這也說明了,在新一代的模型上IPU其實更具普適性。

推理方面,ResNet-50和EfficientNet-B0在PyTorch和TensorFlow的性能表現是不相上下的。這也說明了Poplar SDK 1.4中引入的對於PyTorch的支援,在模型運作中沒有性能上的損耗。

IPU-POD64的橫向與縱向擴展

IPU-POD64是16台IPU-M2000組成的一個解決方案。Graphcore已經在全球範圍之內實現了該方案的交付,該方案實現了x86和IPU運算的解耦。IPU-POD64是目前市場上非常少見,可以同時將縱向擴展和橫向擴展都做得非常好的AI運算平台產品。

縱向擴展是指IPU-POD64可以實現從一台IPU-M2000到一個IPU-POD16 (4台IPU-M2000),再到一個IPU-POD64 (16台IPU-M2000)進行軟體透明擴展。也就是說,編譯好的軟體在一個IPU-M2000裡能用,如果希望獲得16倍的性能,擴展到IPU-POD64,同樣的軟體也能夠運作使用。

與之相比,如果使用DGX-A100這樣的機器,想要從1個DGX-A100擴展到4個DGX-A100,需要做大量的軟體改造。有個概念稱「分散式的機器學習」,即要用一個分散式的機器學習框架,對演算法模型進行相應的改造之後,才能夠從1個DGX-A100擴展到4個DGX-A100。

據了解,很多領先的網際網路公司認為,當前絕大部分單一工作負載最大不會超過IPU-POD64。也就是說,對於當前最主流的工作負載來說,1個IPU-POD64就能夠讓絕大多數工程師不需要擔心分散式的機器學習、分散式的機器學習框架、分散式的通訊,只需一個IPU-POD64就可以進行軟體透明擴展。

縱向擴展不代表不能進行橫向擴展。從橫向擴展的角度來看,多個IPU-POD64最多可以支援64,000個IPU組成的AI運算集群。所以,以最小的IPU-M2000作為一個運算單元,Graphcore可以在橫向擴展、縱向擴展兩個維度,獲得非常好的超級AI運算集群。

Graphcore最新動態

據姊妹刊EE Times China瞭解,Graphcore最近有一系列的動作,包括Graphcore與阿里雲HALO的合作,發佈Poplar SDK 1.4,加入MLPerf管理機構MLCommons等。

阿里雲在GitHub上開放了HALO。Graphcore是阿里雲HALO/ODLA的共建合作夥伴之一,目前在阿里雲HALO的GitHub裡已經有IPU的完整支援程式碼庫odla_PopArt。這意味著在GitHub下載HALO開原始程式碼就已經可以在IPU上使用了。目前,Graphcore和阿里雲也基於HALO做一些共同的客戶實踐的工作。

Graphcore與阿里雲HALO展開了非常緊密的合作。HALO的初衷和NNFusion一樣,想做一個整體的框架,向上跨AI框架,向下透過ODLA這樣通用的硬體介面對接不同硬體廠商的晶片。他們的初衷多是希望處理不同模型,比如TensorFlow、ONNX、或是PyTorch的模型時,能夠將它一鍵式地在系統上或者是集群上執行。

此外,Graphcore最近發佈了Poplar SDK 1.4,並同時推出針對IPU的PyTorch產品級版本。同時,Graphcore宣佈,加入MLPerf管理機構MLCommons。

Graphcore將在2021年上半年正式參與MLPerf性能測試,其IPU-POD64也已經在全球範圍內出貨,包括中國、北美、歐洲,以及其他區域。

本文原刊登於EDN China網站

掃描或點擊QR Code立即加入 “EETimes技術論壇” Line 社群 !

 EET-Line技術論壇-QR

發表評論