AI性能基準測試從此有了「中國標準」!英偉達、谷歌可以試試這套算力卷

(原標題:AI性能基準測試從此有了「中國標準」!英偉達、谷歌可以試試這套算力卷)

秀算力這件事上,近幾年一個叫MLPerf的AI性能基準測試,經常躍入人們的視線。

爲了拿這個標準證明實力,英偉達、谷歌等「算力」大廠的表現,可謂是賺足了眼球。

早在2018年12月,也就是MLPerf首次出爐之際,英偉達便基於自家Tesla V100,在包括圖像分類、物體分割、推薦系統等六項測試中均取得優秀成績,拿下全場最佳。

而此後,英偉達更是頻頻刷榜,就在剛剛過去不久的最新性能測試中,英偉達又憑藉A100 GPU打破了八項AI性能紀錄

谷歌方面也是毫不示弱,憑藉4096塊TPU V3將BERT的訓練時間縮短到了23秒。

對此,谷歌AI掌門人Jeff Dean還在社交平臺發文表示:

很高興看到MLPerf 0.7的結果,谷歌TPU在八項基準測試中,創造了六項紀錄。

我們需要(換)更大的標準了,因爲我們現在在30秒內,就可以訓練ResNet-50、BERT、Transformer、SSD 等模型

那麼問題來了,令這些「算力」大廠們競相追逐的MLPerf這套「考題」,真的是「AI性能基準測試的唯一標準」嗎?

不見得。

要達到理想的AI或者高性能計算(HPC)基準測試,具有三方面的挑戰:

· 首先,基準工作負載(workload)需要表示關於硬件利用率、設置成本和計算模式等的實際問題。

· 其次,基準測試工作負載最好能夠自動適應不同規模機器

· 最後,使用簡單、較少的指標,就可以衡量AI應用上的整個系統性能。

反觀MLPerf,正如Jeff Dean所言,它具有固定的工作負載大小,這本身或許就是個錯誤。

因爲增加的算力,應當被用來解決更大規模的問題,而不是用更少的時間去解決相同的問題。

而像LINPACK這樣的基準測試,在沒有代表性工作負載的情況下,又無法反映AI的跨棧性能。

針對上述問題,清華大學、鵬城實驗室、中科院計算所聯合推出了一套「中國AI試卷」——AIPerf。

簡單來說,AIPerf的特點如下:

· 基於的是自動化機器學習(AutoML)算法,能夠實現深度學習模型的實時生成,對不同規模機器有自適應擴展性,並可檢驗系統對通用AI模型的效果。

· 通過全新的解析方式計算浮點數運算量,可快速準確的預測AI任務中需要的浮點數運算,以此計算浮點數運算速率並作爲評測分數

那麼,中國的這套「AI試卷」具體難度幾何?科學與否?

還請各位看官繼續品讀。

中國的這套「AI試卷」長什麼樣?

攤開這套「AI試卷」,全貌如下:

△ AIPerf基準測試工作流程圖

剛纔也提到,AIPerf是基於AutoML算法來實現,在框架方面,研究人員選擇的是一款較爲用戶友好的AutoML框架——NNI (Neural Network Intelligence)。

但在此基礎上,研究人員針對「AI加速器閒置」、「模型生成耗時」等問題,對NNI框架進行了修改。

AIPerf的工作流程如下:

· 通過SSH訪問主節點,收集從屬節點的信息,並創建SLURM配置腳本。

· 主節點通過SLURM,將工作負載並行和異步地分配給對應請求和可用資源的從屬節點。

· 從屬節點接收到工作負載後,並行地進行架構搜索和模型訓練。

· 從屬節點上的CPU,據當前歷史模型列表搜索新的架構(該列表中包含了測試數據集上詳細的模型信息和精度),然後將架構存儲在緩衝區(如網絡文件系統)中,以便後期訓練。

· 從屬節點上的AI加速器加載「候選架構」和「數據」,利用數據並行性與HPO一起訓練後,將結果存儲在歷史模型列表中。

· 一旦滿足條件(如達到用戶定義的時間),運行就會終止。根據記錄的指標計算出最終結果,然後上報。

做完這套「AI試卷」,得到的分數又該如何來衡量和排名呢?

我們知道,FLOPS是當前最常用來反映高性能計算整體計算能力性能指標

在這套「試卷」中,研究人員還是用FLOPS作爲主要的指標,直接描述AI加速器的計算能力。

在AIPerf中,浮點數運算速率被當作一個數學問題來求解。通過對深度神經網絡的分解,對每個部分的運算量進行解析的分析,得到浮點數運算量。

結合任務運行時間,即可得到浮點數運算速率並作爲benchmark分數。

理論到位了,實驗就要跟上。

硬件規格方面如下:

評估環境的詳情如下:

最後,公佈性能結果!

研究人員在各種規模的機器上運行了AIPerf這項基準測試,主要對兩方面特性做了評估,分別是穩定性和可擴展性

從10個節點到50個節點,最多有400個GPU。所有的中間結果,包括生成的架構、超參數配置、每個時間點的精度和時間戳,都記錄在日誌文件中。

下圖展示了用不同規模的機器進行評估的「基準分數」和「規範分數」(單位均爲FLOPS),隨時間產生的變化。

結果表明,AIPerf基準測試具有魯棒性和線性可擴展性。

接下來,是在不同規模機器下,GPU及其內存利用率的相關評估。

從圖中可以發現,AI訓練卡整體的計算和內存利用率很高(均大於90%)。在不同模型之間的過渡階段,由於數據的加載和計算圖的編譯等原因,利用率會有所下降。

爲什麼要出這套「試卷」?

「瀏覽試卷」後,就需要思考一個問題:

爲什麼要出AIPerf這套AI基準測試?

這個問題就需要「由表及裡」地來看待。

首先,從表象來看,類似MLPerf和LINPACK基準測試程序,自身存在一些漏洞和問題:

· 要麼工作負載大小是固定的,而算力的增加,應當用來解決更大規模的問題,限制了可擴展性。

· 要麼在沒有代表性工作負載的情況下,無法反映系統對AI的跨棧計算性能。

雖然諸如此類的評測標準,目前來看是具有一定的價值和意義,但客觀存在的不足也是不容忽視。

畢竟在當前人工智能飛速發展的大環境下,算力顯得格外重要,而完備及更加科學的「基準測試」,將有助於算力的發展。

由此看來,「基準測試」和「算力」更像一對作用力和反作用力

其次,從深層意義來看,發展算力,是非常必要的。

對於高性能計算來說,早在1993年便誕生了「TOP500」榜單,從一開始的美國、日本霸榜,到中國算力的崛起,不難看出國家在這項建設中的投入。

原因很簡單,高性能計算對於各個國家發展航天事業、石油勘探、水利工程,再到新興的高科技產業,都起到至關重要的作用。

但伴隨着AI的興起,改變了一往傳統高性能計算的「求解方法」——AI+HPC纔是未來算力的發展趨勢。

近年來TOP500榜單,便能體現這一點:

· 首臺登頂榜首的ARM架構HPC,是基於富士通48/52核A64FX ARM。

· 排名第二的SUMMIT,採用IBM Power+NVIDIA V100。

· ……

榜單中近30%系統擁有加速卡/協處理器,也就是說,越來越多的系統配有大量低精度算術邏輯單元,用來支撐人工智能計算能力需求。

而在我國,也有越來越多的企業,開始或已經佈局其中。

例如華爲、浪潮、聯想等,均拿出了自家強悍產品,在諸如TOP500、MLPerf等榜單中大顯身手。

再從實際應用層面來看,或許你覺得發展算力對平民百姓並沒有用,但其實不然。

恰好每年大血拼的「雙11」即將來臨,而每個電商平臺背後,都有一套強有力的推薦系統,也就是用戶經常看到的「猜你喜歡」功能。

推薦得準不準、快不快,很大程度上也是依賴於AI算力的強大與否。

再則,每年上千億元成交額,能夠保證及時付款成功,AI算力也是功不可沒。

……

最後,回到最初的那個問題:

中國出的這套「AI試卷」,即ALPerf,英偉達、谷歌等老牌算力大廠又會有怎樣的表現?

「超級算力大會

一切的謎底,均將在《第二屆中國超級算力大會ChinaSC》中揭曉。

在這場大會中,將匯聚國內外院士、知名學者和產業大咖,圍繞超級計算、新基建、雲計算、大數據、人工智能、區塊鏈等新一代信息技術前沿技術進展。

當然,重頭戲,將發佈兩大重磅榜單:

· 《2020中國高性能計算機性能排行榜TOP100》

· 《2020國際人工智能性能AIPerf500排行榜》

此外,還有一系列精彩內容值得關注:

· 2020年業內知名院士和專家前沿技術分析和解讀

· 2020中國超級計算產業趨勢分析和預測

· 2020中國大數據與智能計算產業領軍企業頒獎

· 《2020中國超大規模雲數據中心考察報告

是騾子是馬,到時候看看。

11月15日,北京麗亭華苑大酒店,這場算力盛宴,你值得關注。

論文作者:

Zhixiang Ren,Yongheng Liu,Tianhui Shi,Lei Xie,Yue Zhou,Jidong Zhai,Youhui Zhang,Yunquan Zhang,Wenguang Chen