訂閱
糾錯(cuò)
加入自媒體

華為深度解讀達(dá)芬奇架構(gòu):3D Cube計(jì)算引擎加速運(yùn)算

8月22日消息 此前,華為正式推出了麒麟810芯片,這款芯片采用華為自研的達(dá)芬奇架構(gòu),其AI得分在蘇黎世聯(lián)邦理工學(xué)院推出的AI Benchmark榜單中位列前三。

華為在文章中同時(shí)表示,8月23日,采用達(dá)芬奇架構(gòu)的AI芯片Ascend910將正式商用發(fā)布,同時(shí)與之配套的新一代AI開(kāi)源計(jì)算框架MindSpore也將同時(shí)亮相。

針對(duì)達(dá)芬奇框架,華為中國(guó)今天發(fā)文進(jìn)行深度科普。以下則是華為對(duì)達(dá)芬奇框架的科普內(nèi)容。

源起:為什么要做達(dá)芬奇架構(gòu)?

華為預(yù)測(cè),到2025年全球的智能終端數(shù)量將會(huì)達(dá)到400億臺(tái),智能助理的普及率將達(dá)到90%,企業(yè)數(shù)據(jù)的使用率將達(dá)到86%?梢灶A(yù)見(jiàn),在不久的將來(lái),AI將作為一項(xiàng)通用技術(shù)極大地提高生產(chǎn)力,改變每個(gè)組織和每個(gè)行業(yè)。為了實(shí)現(xiàn)AI在多平臺(tái)多場(chǎng)景之間的協(xié)同,華為設(shè)計(jì)達(dá)芬奇計(jì)算架構(gòu),在不同體積和功耗條件下提供強(qiáng)勁的AI算力。

初見(jiàn):達(dá)芬奇架構(gòu)的核心優(yōu)勢(shì)

達(dá)芬奇架構(gòu),是華為自研的面向AI計(jì)算特征的全新計(jì)算架構(gòu),具備高算力、高能效、靈活可裁剪的特性,是實(shí)現(xiàn)萬(wàn)物智能的重要基礎(chǔ)。具體來(lái)說(shuō),達(dá)芬奇架構(gòu)采用3D Cube針對(duì)矩陣運(yùn)算做加速,大幅提升單位功耗下的AI算力,每個(gè)AI Core可以在一個(gè)時(shí)鐘周期內(nèi)實(shí)現(xiàn)4096個(gè)MAC操作,相比傳統(tǒng)的CPU和GPU實(shí)現(xiàn)數(shù)量級(jí)的提升。

▲3D Cube

同時(shí),為了提升AI計(jì)算的完備性和不同場(chǎng)景的計(jì)算效率,達(dá)芬奇架構(gòu)還集成了向量、標(biāo)量、硬件加速器等多種計(jì)算單元。同時(shí)支持多種精度計(jì)算,支撐訓(xùn)練和推理兩種場(chǎng)景的數(shù)據(jù)精度要求,實(shí)現(xiàn)AI的全場(chǎng)景需求覆蓋。

深耕:達(dá)芬奇架構(gòu)的AI硬實(shí)力

科普1:常見(jiàn)的AI運(yùn)算類型有哪些?

在了解達(dá)芬奇架構(gòu)的技術(shù)之前,我們先來(lái)弄清楚一下幾種AI運(yùn)算數(shù)據(jù)對(duì)象:

  • 標(biāo)量(Scalar):由單獨(dú)一個(gè)數(shù)組成

  • 向量(Vector):由一組一維有序數(shù)組成,每個(gè)數(shù)由一個(gè)索引(index)標(biāo)識(shí)

  • 矩陣(Matrix):由一組二維有序數(shù)組成,每個(gè)數(shù)由兩個(gè)索引(index)標(biāo)識(shí)

  • 張量(Tensor):由一組n維有序數(shù)組成,每個(gè)數(shù)由n個(gè)索引(index)標(biāo)識(shí)

其中,AI計(jì)算的核心是矩陣乘法運(yùn)算,計(jì)算時(shí)由左矩陣的一行和右矩陣的一列相乘,每個(gè)元素相乘之后的和輸出到結(jié)果矩陣。在此計(jì)算過(guò)程中,標(biāo)量(Scalar)、向量(Vector)、矩陣(Matrix)算力密度依次增加,對(duì)硬件的AI運(yùn)算能力不斷提出更高要求。

典型的神經(jīng)網(wǎng)絡(luò)模型計(jì)算量都非常大,這其中99%的計(jì)算都需要用到矩陣乘,也就是說(shuō),如果提高矩陣乘的運(yùn)算效率,就能最大程度上提升AI算力——這也是達(dá)芬奇架構(gòu)設(shè)計(jì)的核心:以最小的計(jì)算代價(jià)增加矩陣乘的算力,實(shí)現(xiàn)更高的AI能效。

科普2:各單元角色分工揭秘,Da Vinci Core是如何實(shí)現(xiàn)高效AI計(jì)算的?

在2018年全聯(lián)接大會(huì)上,華為推出AI芯片Ascend 310(昇騰310),這是達(dá)芬奇架構(gòu)的首次亮相,Ascend 310相當(dāng)于AI芯片中的NPU。

其中,Da Vinci Core只是NPU的一個(gè)部分,Da Vinci Core內(nèi)部還細(xì)分成很多單元,包括核心的3D Cube、Vector向量計(jì)算單元、Scalar標(biāo)量計(jì)算單元等,它們各自負(fù)責(zé)不同的運(yùn)算任務(wù)實(shí)現(xiàn)并行化計(jì)算模型,共同保障AI計(jì)算的高效處理。

3D Cube矩陣乘法單元是AI計(jì)算的核心,這部分運(yùn)算由3D Cube完成,Buffer L0A、L0B、L0C則用于存儲(chǔ)輸入矩陣和輸出矩陣數(shù)據(jù),負(fù)責(zé)向Cube計(jì)算單元輸送數(shù)據(jù)和存放計(jì)算結(jié)果。

雖然Cube的算力很強(qiáng)大,但只能完成矩陣乘運(yùn)算,還有很多計(jì)算類型要依靠Vector向量計(jì)算單元來(lái)完成。Vector的指令相對(duì)來(lái)說(shuō)非常豐富,可以覆蓋各種基本的計(jì)算類型和許多定制的計(jì)算類型。

Scalar標(biāo)量運(yùn)算單元主要負(fù)責(zé)AI Core的標(biāo)量運(yùn)算,功能上可以看作一個(gè)小CPU,完成整個(gè)程序的循環(huán)控制,分支判斷,Cube、Vector等指令的地址和參數(shù)計(jì)算以及基本的算術(shù)運(yùn)算等。

科普3:3D Cube計(jì)算方式的獨(dú)特優(yōu)勢(shì)是什么?

不同于以往的標(biāo)量、矢量運(yùn)算模式,華為達(dá)芬奇架構(gòu)以高性能3D Cube計(jì)算引擎為基礎(chǔ),針對(duì)矩陣運(yùn)算進(jìn)行加速,大幅提高單位面積下的AI算力,充分激發(fā)端側(cè)AI的運(yùn)算潛能。以兩個(gè)N*N的矩陣A*B乘法為例:如果是N個(gè)1D的MAC,需要N2的cycle數(shù);如果是1個(gè)N2的2D MAC陣列,需要N個(gè)Cycle;如果是1個(gè)N維3D的Cube,只需要1個(gè)Cycle。

▲圖中計(jì)算單元的數(shù)量只是示意,實(shí)際可靈活設(shè)計(jì)

達(dá)芬奇架構(gòu)將大幅提升算力,16*16*16的3D Cube能夠顯著提升數(shù)據(jù)利用率,縮短運(yùn)算周期,實(shí)現(xiàn)更快更強(qiáng)的AI運(yùn)算。舉例來(lái)說(shuō),同樣是完成4096次運(yùn)算,2D結(jié)構(gòu)需要64行*64列才能計(jì)算,3D Cube只需要16*16*16的結(jié)構(gòu)就能算出。其中,64*64結(jié)構(gòu)帶來(lái)的問(wèn)題是:運(yùn)算周期長(zhǎng)、時(shí)延高、利用率低。

達(dá)芬奇架構(gòu)的這一特性也體現(xiàn)在麒麟810上。作為首款采用達(dá)芬奇架構(gòu)NPU的手機(jī)SoC芯片,麒麟810實(shí)現(xiàn)強(qiáng)勁的AI算力,在單位面積上實(shí)現(xiàn)最佳能效,F(xiàn)P16精度和INT8量化精度業(yè)界領(lǐng)先。

麒麟810支持自研中間算子格式IR開(kāi)放,算子數(shù)量多達(dá)240+,處于業(yè)內(nèi)領(lǐng)先水平。更多算子、開(kāi)源框架的支持以及提供更加完備的工具鏈將助力開(kāi)發(fā)者快速轉(zhuǎn)換集成基于不同AI框架開(kāi)發(fā)出的模型,極大地增強(qiáng)了華為HiAI移動(dòng)計(jì)算平臺(tái)的兼容性、易用性,提高開(kāi)發(fā)者的效率,節(jié)約時(shí)間成本,加速更多AI應(yīng)用的落地。

預(yù)見(jiàn):達(dá)芬奇架構(gòu)解鎖AI無(wú)限可能

基于靈活可擴(kuò)展的特性,達(dá)芬奇架構(gòu)能夠滿足端側(cè)、邊緣側(cè)及云端的應(yīng)用場(chǎng)景,可用于小到幾十毫瓦,大到幾百瓦的訓(xùn)練場(chǎng)景,橫跨全場(chǎng)景提供最優(yōu)算力。

以Ascend芯片為例,Ascend-Nano可以用于耳機(jī)電話等IoT設(shè)備的使用場(chǎng)景;Ascend-Tiny和Ascend-Lite用于智能手機(jī)的AI運(yùn)算處理;在筆記本電腦等算力需求更高的便攜設(shè)備上,由Ascend 310(Ascend-Mini)提供算力支持;而邊緣側(cè)服務(wù)器上則需要由Multi-Ascend 310完成AI計(jì)算;至于超復(fù)雜的云端數(shù)據(jù)運(yùn)算處理,則交由算力最高可達(dá)256 TFLOPS@FP16的Ascend 910(Ascend-Max)來(lái)完成。正是由于達(dá)芬奇架構(gòu)靈活可裁剪、高能效的特性,才能實(shí)現(xiàn)對(duì)上述多種復(fù)雜場(chǎng)景的AI運(yùn)算處理。

同時(shí),選擇開(kāi)發(fā)統(tǒng)一架構(gòu)也是一個(gè)非常關(guān)鍵的決策。統(tǒng)一架構(gòu)優(yōu)勢(shì)很明顯,那就是對(duì)廣大開(kāi)發(fā)者非常利好;谶_(dá)芬奇架構(gòu)的統(tǒng)一性,開(kāi)發(fā)者在面對(duì)云端、邊緣側(cè)、端側(cè)等全場(chǎng)景應(yīng)用開(kāi)發(fā)時(shí),只需要進(jìn)行一次算子開(kāi)發(fā)和調(diào)試,就可以應(yīng)用于不同平臺(tái),大幅降低了遷移成本。不僅開(kāi)發(fā)平臺(tái)語(yǔ)言統(tǒng)一,訓(xùn)練和推理框架也是統(tǒng)一的,開(kāi)發(fā)者可以將大量訓(xùn)練模型放在本地和云端服務(wù)器,再將輕量級(jí)的推理工作放在移動(dòng)端設(shè)備上,獲得一致的開(kāi)發(fā)體驗(yàn)。

在算力和技術(shù)得到突破性提升后,AI將廣泛應(yīng)用于智慧城市、自動(dòng)駕駛、智慧新零售、機(jī)器人、工業(yè)制造、云計(jì)算AI服務(wù)等場(chǎng)景。未來(lái),AI將應(yīng)用更加廣泛的領(lǐng)域,并逐漸覆蓋至生活的方方面面。

聲明: 本文由入駐維科號(hào)的作者撰寫(xiě),觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)