英偉達(dá)在云端AI訓(xùn)練芯片市場超九成的市占率讓新入局的競爭者們都將槍口指向這家當(dāng)紅AI公司。聲稱AI性能比英偉達(dá)GPU的新產(chǎn)品不少,但真正突破英偉達(dá)護(hù)城河的現(xiàn)在仍未看到。
相比在硬件性能上超越英偉達(dá),軟件生態(tài)的趕超難度顯然更大。不過,微軟亞洲研究院的NNFusion項(xiàng)目以及阿里云的HALO開源項(xiàng)目,正努力降低從GPU遷移到新的硬件平臺的難度和成本,再加上在多個重要AI模型上性能超英偉達(dá)最新A100 GPU的IPU,云端AI芯片市場的格局未來幾年可能會發(fā)生變化。
微軟、阿里云開源項(xiàng)目
降低遷移出GPU的難度
—
目前AI的落地,仍以互聯(lián)網(wǎng)和云計(jì)算為主。因此,科技巨頭們很快發(fā)現(xiàn)遷移到新平臺不能只看峰值算力。Graphcore高級副總裁兼中國區(qū)總經(jīng)理盧濤表示:“客戶考慮為一個新的軟硬件平臺買單時,首先考慮的是能夠獲得多少收益。其次考慮的是需要多少成本,這涉及軟硬件的遷移成本?!?/p>
對于科技巨頭們而言,GPU確實(shí)是一個好選擇,但考慮到成本、功耗以及自身業(yè)務(wù)的特點(diǎn),仍然有自研或者遷移到其它高性能芯片的動力。此時,軟件成為能否快速、低成本遷移的關(guān)鍵。
將已有的AI模型遷移到新的AI加速器時,現(xiàn)在普遍的做法是在TensorFlow寫一些后端集成新硬件,這給社區(qū)和AI芯片公司都帶來了負(fù)擔(dān),也增加了遷移的難度和成本。
微軟亞洲研究院的NNFusion以及阿里云的HALO開源項(xiàng)目,都是希望從AI編譯的角度,避免重復(fù)性的工作,讓用戶能夠在GPU和其它AI加速器之間盡量平滑遷移,特別是GPU和IPU之間的遷移。
也就是說,NNFusion和HALO向上跨AI框架,既可以集成TensorFlow生成的模型,也可以集成PyTorch或其他框架生成的模型。向下用戶只要通過NNFusion或者HALO的接口就可以在不同的AI芯片上做訓(xùn)練或者推理。
這種調(diào)度框架在降低遷移難度和成本的同時,還能提升性能。根據(jù)2020 OSDI(計(jì)算機(jī)學(xué)界最頂級學(xué)術(shù)會議之一)發(fā)布的研究結(jié)果,研究者在英偉達(dá)和AMD的GPU,還有Graphcore IPU上做了各種測試后得出結(jié)果,在IPU上LSTM的訓(xùn)練模型得到了3倍的提升。
當(dāng)然,這樣的收益還是需要開源社區(qū)與硬件提供方的緊密合作,比如Graphcore與微軟亞洲研究院以及阿里云的合作。
增加遷入IPU的便捷性
—
“我們與阿里云HALO和微軟NNFusion緊密合作,這兩個項(xiàng)目支持的最主要的平臺是GPU和IPU?!北R濤表示,“目前在阿里云HALO的GitHub里已經(jīng)有IPU的完整支持代碼odla_PopArt,下載開源代碼就已經(jīng)可以在IPU上使用?!?/p>
能夠便捷地使用IPU也離不開主流機(jī)器學(xué)習(xí)框架的支持。Graphcore本月最新發(fā)布了面向IPU的PyTorch產(chǎn)品級版本與Poplar SDK 1.4。PyTorch是AI研究者社區(qū)炙手可熱的機(jī)器學(xué)習(xí)框架,與TensorFlow兩分天下。
PyTorch支持IPU引起了機(jī)器學(xué)習(xí)大神Yann LeCun的關(guān)注。之所以引發(fā)廣泛關(guān)注,是因?yàn)檫@個支持對于IPU的廣泛應(yīng)用有著積極意義。
Graphcore中國工程總負(fù)責(zé)人,AI算法科學(xué)家金琛介紹,“在PyTorch的代碼里,我們引入了一個叫PopTorch的輕量級接口。通過這個接口,用戶可以基于他們當(dāng)前的PyTorch的模型做輕量級封裝,之后就可以無縫的在IPU和CPU上運(yùn)行這個模型?!?/p>
這也能更好地與HALO和NNFusion開源社區(qū)合作。金琛告訴雷鋒網(wǎng),“不同的框架會有不同中間表示格式,也就是IR(Intermediate Representation)。我們希望將不同的IR格式轉(zhuǎn)換到我們通用的PopART計(jì)算圖上,這也是兼容性中最關(guān)鍵的一點(diǎn)?!?/p>
據(jù)悉,IPU對TensorFlow的支持,是像TPU一樣,通過TensorFlow XLA backend接入到TensorFlow的框架,相當(dāng)于把一個TensorFlow計(jì)算圖轉(zhuǎn)換成為一個XLA的計(jì)算圖,然后再通過接入XLA的計(jì)算圖下沉到PopART的計(jì)算圖,通過編譯,就可以生成可以在IPU上執(zhí)行的二進(jìn)制文件。
金琛認(rèn)為,“各個層級圖的轉(zhuǎn)換是一個非常關(guān)鍵的因素,也需要一些定制化工作,因?yàn)槔锩娴囊恍┩ㄓ盟阕右彩腔贗PU進(jìn)行開發(fā)的,這是我們比較特殊的工作?!?/p>
除了需要增加對不同AI框架以及AI框架里自定義算子的支持,增強(qiáng)對模型的覆蓋度的支持,也能夠降低遷移成本。
金琛介紹,對于訓(xùn)練模型的遷移,如果是遷移一個不太復(fù)雜的模型,一般一個開發(fā)者一周就可以完成,比較復(fù)雜的模型則需要兩周時間。如果是遷移推理模型,一般只需要1-2天就可以完成。
IPU正面挑戰(zhàn)GPU,
云端芯片市場或改變
—
AI時代,軟硬件一體化的重要性更加突顯。盧濤說:“AI處理器公司大致可以分為三類,一類公司是正在講PPT的公司,一類公司是有了芯片的公司,一類公司是真正接近或者是有了軟件的公司。”
已經(jīng)在軟件方面有進(jìn)展的Graphcore,硬件的表現(xiàn)能否也讓用戶有足夠的切換動力?本月,Graphcore發(fā)布了基于MK2 IPU的IPU-M2000的多個模型的訓(xùn)練Benchmark,包括典型的CV模型ResNet、基于分組卷積的ResNeXt、EfficientNet、語音模型、BERT-Large等自然語言處理模型,MCMC等傳統(tǒng)機(jī)器學(xué)習(xí)模型。
其中有一些比較大的提升,比如與A100 GPU相比,IPU-M2000的ResNet50的吞吐量大概能實(shí)現(xiàn)2.6倍的性能提升,ResNeXt101的吞吐量提升了3.6倍,EfficientNet的吞吐量達(dá)到了18倍,Deep Voice 3達(dá)到了13倍。
值得一提的還有IPU-POD64訓(xùn)練BERT-Large的時間比1臺DGX-A100快5.3倍,比3臺DGX-A100快1.8倍。1個IPU-POD64和3個DGX-A100的功率和價格基本相同。
強(qiáng)調(diào)IPU訓(xùn)練BERT-Large的成績不僅因?yàn)檫@是英偉達(dá)GPU和谷歌TPU之后第三個發(fā)布能夠訓(xùn)練這一模型的AI芯片,還因?yàn)锽ERT-Large模型對現(xiàn)在芯片落地的意義。
盧濤說:“在今天,BERT-Large模型不管是對于工業(yè)界,還是對研究界都是一個比較好的基準(zhǔn),它在未來至少一年內(nèi)是一個上線的模型水準(zhǔn)。”
不過,這一成績目前并非MLPerf發(fā)布的結(jié)果,正式結(jié)果需要等待Graphcore在明年上半年正式參與MLPerf性能測試。近期,Graphcore宣布加入MLPerf管理機(jī)構(gòu)MLCommons。
“我覺得我們加入MLCommons和提交MLPerf表明,IPU即將在GPU的核心領(lǐng)域里面和GPU正面PK,表明了IPU除了能做GPU不能做的事情,在GPU最擅長的領(lǐng)域,IPU也能以更好TCO實(shí)現(xiàn)相等,甚至更優(yōu)的表現(xiàn)。”盧濤表示。
微軟亞洲研究院、阿里云、Graphcore都在共同推動GPU轉(zhuǎn)向IPU,什么時候會迎來破局時刻?