《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 人工智能 > 業(yè)界動態(tài) > AI芯片的另一條路

AI芯片的另一條路

2020-06-24
來源:半導(dǎo)體行業(yè)觀察
關(guān)鍵詞: AI 芯片 人工智能

在先進(jìn)工藝和架構(gòu)的協(xié)同下,芯片的性能在過去幾年獲得了爆發(fā)性的增長,尤其是在最近幾年火熱的人工智能行業(yè),這個取得的成就是有目共睹的。

  據(jù)OpenAI在2018年年中發(fā)表的報告,自 2012 年以來,人工智能訓(xùn)練任務(wù)中使用的算力正呈指數(shù)級增長。人們對于算力的需求增長也超過 300,000 倍。作為對比,如果是以摩爾定律的速度,這個數(shù)字只會是12倍的增長。在他們看來,正是這些硬件性能的跨越式突破,才成就了現(xiàn)在的AI產(chǎn)業(yè)。

1.jpg

  自2012年以來,AI對算力的要求(source:OpenAI)

  Open AI的報告進(jìn)一步指出,成本考量和物理學(xué)特性等因素將會壓制傳統(tǒng)AI硬件性能的上升勢頭。但市場對AI算力的需求仍然處于增長期,為此探索新的硬件方案成為了AI芯片供應(yīng)商亟待解決的問題。不少廠商也都另辟蹊徑從多個方向解決廣為人知的“馮諾依曼瓶頸”。

  在鯤云信息科技有限公司創(chuàng)始人牛昕宇博士(以下簡稱牛博士)看來,一個不同于過往的新架構(gòu),是解決當(dāng)前AI問題的正確之選。他同時也指出,目前的AI芯片行業(yè),需要變革的不僅僅是架構(gòu)。

 亟待變革的AI芯片架構(gòu)

  對AI芯片行業(yè)有所了解的讀者都應(yīng)該知道,現(xiàn)在統(tǒng)治人工智能芯片市場的廠商主要是英偉達(dá),依靠GPU優(yōu)秀的并行計算能力和CUDA生態(tài),這家本來只是做顯卡的廠商在人工智能時代大放異彩。

  除了英偉達(dá)之外,擁有龐大部署量的英特爾至強(qiáng)處理器和聲名在外的谷歌TPU和特斯拉FSD也是AI芯片市場一個不可忽略的角色。這些處理器有一個共同特點(diǎn),那就是他們無一例外采用了指令集架構(gòu)處理器。

2.png

  經(jīng)典指令集架構(gòu)圖

  這些架構(gòu)在實際應(yīng)用中不能發(fā)揮人工智能芯片的全部算力潛力,為此牛博士指出,在算力需求猛增的AI時代,需要一種新的芯片架構(gòu),這主要是由以下兩個原因決定的:

  從硬件架構(gòu)上看,指令集架構(gòu)芯片中有部分芯片面積用于支持指令控制。更關(guān)鍵的問題在于,在指令執(zhí)行過程中,計算單元在多數(shù)時間內(nèi)處于等待的狀態(tài):等待計算所需數(shù)據(jù)的到來。從這個角度看,指令集架構(gòu)下的算力并沒有被充分發(fā)揮出來給到用戶。

  另一方面,如上圖右邊所示,一個標(biāo)準(zhǔn)的五級指令集的每一條指令都要經(jīng)過讀取、解碼、執(zhí)行、讀寫內(nèi)存和把數(shù)據(jù)寫到寄存器里面去這五個步驟。在這些步驟中,只有執(zhí)行這一步驟是在執(zhí)行真正的計算。其他部分都是在做指令的讀取和解碼這樣的功能。雖然可以通過指令流水降低計算單元閑置,不過在實際執(zhí)行過程中,受限于指令間的依賴、以及指令間協(xié)同的時鐘不確定性,指令內(nèi)部的計算單元會出現(xiàn)閑置等挑戰(zhàn)。

  牛博士舉例說到,英偉達(dá)T4在Batch=128或Batch最高的測試環(huán)境下,按照其官網(wǎng)公布的指標(biāo)去比對幾個網(wǎng)絡(luò)實際的使用算力,得出的結(jié)果是峰值算力的7%到30%左右。這意味著產(chǎn)品有很大部分的性能還不能完全發(fā)揮出來。

  “如果大家都在類似架構(gòu)下競爭,在接近的芯片利用率前提下,芯片公司的產(chǎn)品升級最后會變成依賴制程工藝和軟件生態(tài)的比拼。而且,對比P4與T4產(chǎn)品的實測性能可以發(fā)現(xiàn),隨著峰值算力的增加,芯片的實際利用率有所降低”,牛博士補(bǔ)充說。

  從目前的市場發(fā)展上看,包括英偉達(dá)在內(nèi)的多家AI芯片廠商都在沿著上述技術(shù)路線演進(jìn),但從當(dāng)前制程工藝的發(fā)展和材料本身的特性限制看來,繼續(xù)大幅提升峰值算力意味著更高的芯片成本,而隨著峰值算力降低的芯片利用率意味著給到用戶的實測算力并不會等比例線性提升。這與當(dāng)前AI應(yīng)用客戶更高算力性價比的需求是相背而行的。換而言之,尋找一個新的AI芯片架構(gòu)迫在眉睫。

  “數(shù)據(jù)流架構(gòu)或許會是一個不錯的選擇”,牛博士說。

  根據(jù)他的觀點(diǎn),所有的計算架構(gòu)需要保證一個核心需求:加減乘除等計算操作能夠按照編程需求按特定次序完成對特定數(shù)據(jù)的計算。與傳統(tǒng)的馮·諾依曼架構(gòu)或控制流體系結(jié)構(gòu)進(jìn)行對比,數(shù)據(jù)流架構(gòu)并沒有指令相關(guān)的指令控制與執(zhí)行單元。數(shù)據(jù)流架構(gòu)依靠數(shù)據(jù)流動次序,而不是指令執(zhí)行次序保證計算執(zhí)行順序,從而將計算與數(shù)據(jù)搬運(yùn)重疊,以實現(xiàn)更高的吞吐量和更低的延遲。

3.png

  定制數(shù)據(jù)流計算示例

  “在指令集架構(gòu)中,由于指令協(xié)同的不確定性,計算與數(shù)據(jù)讀寫無法深度重疊,部分時間計算單元處于等待數(shù)據(jù)狀態(tài),從而導(dǎo)致閑置計算單元和芯片利用率的下降。而數(shù)據(jù)流架構(gòu)中每個時鐘下所有計算單元的狀態(tài)是確定的,計算單元無需等待其它單元的計算,從而消除計算資源閑置?!迸2┦勘硎?。“這就像一個交響樂團(tuán),當(dāng)樂團(tuán)中每個人都按照統(tǒng)一的拍子進(jìn)行演奏時,而且每個人在每個拍子下的動作是確定的,樂團(tuán)中的樂器之間并不需要相互等待,可以按照自己的節(jié)拍并行的演奏,就會協(xié)作完成一首曲子。這就像數(shù)據(jù)流架構(gòu)中計算單元間的協(xié)作關(guān)系:通過精確的時鐘進(jìn)行協(xié)作,而并不存在先后依賴關(guān)系,所以無需等待?!迸2┦垦a(bǔ)充說。

  據(jù)介紹,數(shù)據(jù)流架構(gòu)支持時鐘級的精確計算,讓每個數(shù)據(jù)流動及計算在每個時鐘都可精確預(yù)計,從而支持將數(shù)據(jù)流動與計算深度重疊,消除計算單元閑置;于此同時,數(shù)據(jù)流架構(gòu)中沒有指令,從而破除了指令集架構(gòu)的控制冗余以及等待指令讀取譯碼帶來的計算單元閑置問題,進(jìn)一步提升芯片利用率。此外,數(shù)據(jù)流架構(gòu)中一個數(shù)據(jù)流流水線中可深度整合大量計算單元,從而打破指令集架構(gòu)中峰值算力提升與芯片利用率的沖突問題:通過不斷加深數(shù)據(jù)流流水線,可以在提升峰值算力同時,不降低流水線中計算單元閑置時間。“

  正是因為數(shù)據(jù)流架構(gòu)擁有如此多的優(yōu)勢,包括Wave Computing、SambaNova和Groq在內(nèi)的多家公司投入了這個領(lǐng)域的研發(fā),值得一提的是Groq的初創(chuàng)團(tuán)隊還是由谷歌TPU的核心成員創(chuàng)立,由此可以看到數(shù)據(jù)流架構(gòu)的前景。

  當(dāng)然,鯤云科技創(chuàng)始團(tuán)隊自1994年就開始探索數(shù)據(jù)流架構(gòu)在各個垂直領(lǐng)域的開發(fā)和落地,在數(shù)據(jù)流技術(shù)上具有深厚的積累,自然是這個架構(gòu)的積極支持者。也正是在這個背景下,團(tuán)隊創(chuàng)立了鯤云科技,從零開始探索針對深度學(xué)習(xí)的數(shù)據(jù)流架構(gòu),也就是CAISA。

 AI芯片能力≠芯片峰值算力

  在架構(gòu)類似的情況下,峰值算力是一個可以簡單快速估算芯片實測性能的指標(biāo),也是在AI芯片設(shè)計中重點(diǎn)關(guān)注的指標(biāo)。然而近幾年,提升峰值算力的發(fā)展方向?qū)⑷斯ぶ悄苄酒陌l(fā)展推向了另一個極端:峰值算力(或每瓦的峰值算力)已經(jīng)成為評價一顆AI芯片性能的單一指標(biāo),導(dǎo)致大量AI芯片研發(fā)資源投入到如何把峰值算力推高。

  然而對于用戶來說,峰值算力其實并不是他們的本質(zhì)需求。

  ”用戶真正關(guān)心的是AI芯片的實測算力,而不完全是峰值算力。峰值算力并不能直接釋放給用戶,真正釋放給用戶的要乘上一個系數(shù),叫做芯片利用率“,牛博士說?!狈逯邓懔χ笜?biāo)假設(shè)每個芯片內(nèi)部計算單元每個時鐘都處于計算狀態(tài),而現(xiàn)有指令集架構(gòu)在運(yùn)算執(zhí)行中計算單元存在閑置“,牛博士強(qiáng)調(diào)。

  以英偉達(dá)T4加速卡為例,常用的識別、檢測和分割的算法ResNet50、SSD-ResNet50和U-Net Industrial,在Batch=128或者最高性能的情況下,可以分別獲得32.1%、7.5%、11.9%的芯片利用率,這意味著在實際應(yīng)用中,只有7%到32%的峰值算力轉(zhuǎn)換為實測性能釋放給用戶,當(dāng)中帶來的芯片性能浪費(fèi)是顯而易見的。

5.png

T4加速卡的測試結(jié)果

  ”為了讓用戶獲得更高的性能,除了持續(xù)提高峰值性能以外,芯片利用率的提升會是一個更好的方案,因為這會在不增加芯片成本的情況下,大幅提升芯片的實測性能。這也是鯤云科技新推出的CAISA 芯片正在努力的方向“,牛博士說。

  這是一款采用28nm工藝打造的芯片,搭載了四個CAISA 3.0引擎,具有超過1.6萬個MAC(乘累加)單元,峰值性能可達(dá)10.9TOPs。而通過PCIe 3.0×4接口與主處理器通信,同時具有雙DDR通道,可為每個CAISA芯片提供超過340Gbps的帶寬。

4.png

  CAISA芯片架構(gòu)圖

  作為一款面向邊緣和數(shù)據(jù)中心推理的人工智能芯片,CAISA芯片可實現(xiàn)最高95.4%的芯片利用率。這就讓他們在既滿足客戶在價格和功耗方面需求的同時,還能為客戶提供更強(qiáng)的算力,提高了性價比。而之所以能做到如此高的芯片利用率,與鯤云科技的CAISA 3.0數(shù)據(jù)流架構(gòu)有莫大的關(guān)系。

6.png

  CAISA3.0架構(gòu)圖

  在文章前面我們提到,鯤云科技首席科學(xué)家Wayne Luk陸永青院士從1994年就開始將數(shù)據(jù)流架構(gòu)應(yīng)用到各個垂直領(lǐng)域。經(jīng)歷了前十幾年的發(fā)展積累,到鯤云科技于2016年成立并在FPGA上實現(xiàn)交付,與客戶的交流迭代之后,完成了此次全新的架構(gòu)升級。

  來到CAISA3.0中,數(shù)據(jù)計算與數(shù)據(jù)流動的重疊,壓縮計算資源的每一個空閑時鐘;通過算力資源的動態(tài)平衡,消除流水線的性能瓶頸;通過數(shù)據(jù)流的時空映射,最大化復(fù)用芯片內(nèi)的數(shù)據(jù)流帶寬,減少對外部存儲帶寬的需求。上述設(shè)計使CNN算法的計算數(shù)據(jù)在CAISA3.0內(nèi)可以實現(xiàn)不間斷的持續(xù)運(yùn)算,最高可實現(xiàn)95.4%的芯片利用率,在同等峰值算力條件下,可獲得相對于GPU 3倍以上的實測算力,從而為用戶提供更高的算力性價比。

  相比旗艦款Xavier加速卡,搭載CAISA芯片的星空加速卡X3可以最高提供4.12倍實測性能提升;而與T4相比,鯤云科技也能提供最高3.91倍實測性能提升。這都是超高的芯片利用率提升所帶來的。得益于這個利用率,過往通過提升峰值性獲得更高性能而帶來的高成本問題,也迎刃而解。

7.jpg

  X3 vs Xavier 芯片利用率對比圖

8.png

  X3 vs Xavier 性能對比圖

9.jpg

  X3 vs Xavier 延時對比圖

10.png

  X9 vs T4 芯片利用率對比圖

11.png

  X9 vs T4 性能對比圖

12.png

  X9 vs T4 延時對比圖

  也許很多人并沒有理解這個3.91倍背后的意義,讓我們舉個現(xiàn)有的例子來對比說明一下。

  AI從業(yè)人員都知道,英偉達(dá)為了展現(xiàn)其T4的實力,在其官方網(wǎng)站上公布了這個加速卡跑在不同網(wǎng)絡(luò)模型下的性能指標(biāo)。作為AI芯片行業(yè)的風(fēng)向標(biāo),任何一款芯片想要說明自己的實力,只需要跑和T4一樣的網(wǎng)絡(luò),然后公布相關(guān)的Benchmark就可以如愿以償。早前被英特爾收購的Habana就是這樣做的。根據(jù)Habana所公布benchmark性能,相比于T4官網(wǎng)指標(biāo)(最新官網(wǎng)指標(biāo)為5415FPS),通過更高的峰值算力,Habana的產(chǎn)品提供了2.85倍實測性能提升。正是因為在實測性能上取得的領(lǐng)先,最終獲得Intel的青睞,讓他們以20億美元的估值被收購。

  通過這個例子,我們也可以看到鯤云科技這個數(shù)字的真正價值。

111.jpg

  在這個高性能芯片的支持下,鯤云科技打造了高算力性價比的AI計算平臺星空加速卡系列,并推出了X3和X9兩款產(chǎn)品。

  其中星空X3加速卡是搭載單顆CAISA 芯片的數(shù)據(jù)流架構(gòu)深度學(xué)習(xí)推斷計算平臺,為工業(yè)級半高半長單槽規(guī)格的PCIe板卡。得益于其輕量化的規(guī)格特點(diǎn),X3加速卡可以與不同類型的計算機(jī)設(shè)備進(jìn)行適配,包括個人電腦、工業(yè)計算機(jī)、網(wǎng)絡(luò)視頻錄像機(jī)、工作站、服務(wù)器等,滿足邊緣和高性能場景中的AI計算需求。相較于英偉達(dá)邊緣端旗艦產(chǎn)品Xavier,X3可實現(xiàn)1.48-4.12倍的實測性能提升。

13.png

  星空X3加速卡

  X9加速卡為搭載4顆CAISA 芯片的深度學(xué)習(xí)推斷板卡,峰值性能43.6TOPS,主要滿足高性能場景下的AI計算需求。同英偉達(dá)旗艦產(chǎn)品T4相對,X9在ResNet-50, YOLO v3等模型上的芯片利用率提升2.84-11.64倍。在實測性能方面,X9在ResNet50可達(dá)5240FPS,與T4性能接近,在YOLO v3、UNet Industrial等檢測分割網(wǎng)絡(luò),實測性能相較T4有1.83-3.91倍性能提升。在達(dá)到最優(yōu)實測性能下,X9處理延時相比于T4降低1.83-32倍。實測性能以及處理延時的大幅領(lǐng)先,讓數(shù)據(jù)流架構(gòu)為AI芯片的發(fā)展提供了提升峰值性能之外的另一條技術(shù)路線。

14.png

  星空X9加速卡發(fā)布

  據(jù)了解,目前星空X3加速卡已經(jīng)推出市場,而星空X9加速卡將于今年8月推出市場。

  全球首個數(shù)據(jù)流AI芯片背后

  從行業(yè)的現(xiàn)狀看來,鯤云科技是全球首家推出數(shù)據(jù)流AI芯片,并且提供第三方實測benchmark的中國芯片企業(yè)。這是前文說到的Wave Computing、SambaNova和Groq等國外明星初創(chuàng)企業(yè)所不能達(dá)到的成就。而通過數(shù)據(jù)流網(wǎng)絡(luò)中算子的不同配置和組合,鯤云科技的CAISA芯片更可支持到絕大多數(shù)的CNN算法,并能讓開發(fā)者輕易地將模型遷移到這個平臺上……

  能做到這樣,是其架構(gòu)和軟件相互協(xié)同獲得的成果。

  CAISA3.0架構(gòu)可以通過流水線動態(tài)重組實現(xiàn)對不同深度學(xué)習(xí)算法的高性能支持。通過CAISA架構(gòu)層的數(shù)據(jù)流引擎、全局?jǐn)?shù)據(jù)流網(wǎng)、全局?jǐn)?shù)據(jù)流緩存,以及數(shù)據(jù)流引擎內(nèi)部的人工智能算子模塊、局部數(shù)據(jù)流網(wǎng)、局部數(shù)據(jù)流緩存的分層設(shè)計,在數(shù)據(jù)流配置器控制下,CAISA架構(gòu)中的數(shù)據(jù)流連接關(guān)系和運(yùn)行狀態(tài)都可以被自動化動態(tài)配置,從而生成面向不同AI算法的高性能定制化流水線。在保證高性能的前提下,支持用戶使用基于CAISA3.0架構(gòu)的計算平臺實現(xiàn)如目標(biāo)檢測、分類及語義分割等廣泛的人工智能算法應(yīng)用。

  ”專為CAISA3.0架構(gòu)配備的RainBuilder編譯工具鏈支持從算法到芯片的端到端自動化部署“,牛博士強(qiáng)調(diào)。而在RainBuilder編譯工具鏈的支持下,用戶和開發(fā)者無需了解架構(gòu)的底層硬件配置,簡單兩步即可實現(xiàn)算法快速遷移和部署。

微信圖片_20200624102542.png

  RainBuilder架構(gòu)圖

  據(jù)透露,RainBuilder編譯器可自動提取主流AI開發(fā)框架(TensorFlow,Caffe,Pytorch,ONNX等)中開發(fā)的深度學(xué)習(xí)算法的網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)信息,并面向CAISA結(jié)構(gòu)進(jìn)行優(yōu)化;工具鏈中的運(yùn)行時(Runtime)和驅(qū)動(Driver)模塊負(fù)責(zé)硬件管理并為用戶提供標(biāo)準(zhǔn)的API接口,運(yùn)行時可以基于精確的CAISA性能模型,實現(xiàn)算法向CAISA架構(gòu)的自動化映射,同時提供可以被高級語言直接調(diào)用的API接口;最底層的驅(qū)動可以實現(xiàn)對用戶透明的硬件控制。RainBuilder工具鏈?zhǔn)褂煤唵?,部署方便,通用性?qiáng),可以讓用戶快速和低成本的部署和遷移已有算法到CAISA硬件平臺上。

  回顧計算行業(yè)的發(fā)展,不同的應(yīng)用催生了不同的處理器架構(gòu)。早期PC的出現(xiàn),讓X86架構(gòu)和Intel名揚(yáng)天下;近十年移動設(shè)備的出現(xiàn),又推動了Arm架構(gòu)和高通的蓬勃發(fā)展。

  現(xiàn)在,我們進(jìn)入了AI時代,也許一個屬于數(shù)據(jù)流處理器和鯤云科技的時代,從這刻開始正式上演。

 

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。