达芬奇架构NPU
達(dá)芬奇架構(gòu)NPU
達(dá)芬奇架構(gòu)的核心優(yōu)勢(shì)是什么?如何更好地賦能麒麟990?
達(dá)芬奇架構(gòu),是華為自研的面向AI計(jì)算特征的全新計(jì)算架構(gòu),具備高算力、高能效、靈活可裁剪的特性,是實(shí)現(xiàn)萬物智能的重要基礎(chǔ)。具體來說,達(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ì)算單元。支持多種精度計(jì)算,支撐訓(xùn)練和推理兩種場(chǎng)景的數(shù)據(jù)精度要求,實(shí)現(xiàn)AI的全場(chǎng)景需求覆蓋。
在如智能手機(jī)等實(shí)際端側(cè)AI應(yīng)場(chǎng)景中,AI算力與功耗的協(xié)調(diào)是至關(guān)重要的,一般來講更高的AI算力意味著更大的功耗,因此智能手機(jī)的續(xù)航常常使AI算力受限。而有了達(dá)芬奇架構(gòu)NPU,這一狀況將得到改善,如果麒麟990能夠搭載達(dá)芬奇架構(gòu)NPU,麒麟芯片或?qū)⒃俅斡瓉碚饎?dòng)行業(yè)的算力升級(jí)。
DaVinci Core是如何實(shí)現(xiàn)高效AI計(jì)算的?
華為推出AI芯片昇騰310,達(dá)芬奇架構(gòu),昇騰310相當(dāng)于AI芯片中的NPU。其中,DaVinci Core只是NPU的一個(gè)部分,DaVinci 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矩陣乘法單元:算力擔(dān)當(dāng)
剛才已經(jīng)提到,矩陣乘是AI計(jì)算的核心,這部分運(yùn)算由3D Cube完成,Buffer L0A,L0B,L0C則用于存儲(chǔ)輸入矩陣和輸出矩陣數(shù)據(jù),負(fù)責(zé)向Cube計(jì)算單元輸送數(shù)據(jù)和存放計(jì)算結(jié)果。
? Vector向量計(jì)算單元:靈活的多面手
雖然Cube的算力很強(qiáng)大,但只能完成矩陣乘運(yùn)算,還有很多計(jì)算類型要依靠Vector向量計(jì)算單元來完成。Vector的指令相對(duì)來說非常豐富,可以覆蓋各種基本的計(jì)算類型和許多定制的計(jì)算類型.
? Scalar標(biāo)量計(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)算等。
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è)NN的矩陣AB 乘法為例:如果是N個(gè)1D 的MAC,需要N2(即N的2次方)的cycle數(shù);如果是1個(gè)N2的2D MAC陣列,需要N個(gè)Cycle;如果是1個(gè)N維3D的Cube,只需要1個(gè)Cycle。
(圖中的計(jì)算單元的數(shù)量只是示意。實(shí)際可靈活設(shè)計(jì))
華為創(chuàng)新設(shè)計(jì)的達(dá)芬奇架構(gòu)將大幅提升算力,161616的3D Cube能夠顯著提升數(shù)據(jù)利用率,縮短運(yùn)算周期,實(shí)現(xiàn)更快更強(qiáng)的AI運(yùn)算。這是什么意思呢?舉例來說,同樣是完成4096次運(yùn)算,2D結(jié)構(gòu)需要64行64列才能計(jì)算,3D Cube只需要161616的結(jié)構(gòu)就能算出。其中,6464結(jié)構(gòu)帶來的問題是:運(yùn)算周期長、時(shí)延高、利用率低。
達(dá)芬奇架構(gòu)的這一特性也完美體現(xiàn)在麒麟810上。作為首款采用達(dá)芬奇架構(gòu)NPU的手機(jī)SoC芯片,麒麟810實(shí)現(xiàn)強(qiáng)勁的AI算力,在單位面積上實(shí)現(xiàn)最佳能效,FP16精度和INT8量化精度業(yè)界領(lǐng)先,搭載這款SoC芯片的華為Nova 5、Nova 5i Pro及榮耀9X手機(jī)已上市,為廣大消費(fèi)者提供多種精彩的AI應(yīng)用體驗(yàn)。
更強(qiáng)算力的麒麟990,開啟互聯(lián)互通的智慧新場(chǎng)景
一直以來,麒麟芯片的AI實(shí)力之所以受到人們的認(rèn)可,除了強(qiáng)勁的AI計(jì)算力領(lǐng)先行業(yè),華為手機(jī)實(shí)現(xiàn)眾多應(yīng)用場(chǎng)景。達(dá)芬奇架構(gòu)作為華為自研架構(gòu),在應(yīng)用適應(yīng)性方面與華為的理念一脈相承,基于靈活可擴(kuò)展的特性,達(dá)芬奇架構(gòu)能夠滿足端側(cè)、邊緣側(cè)及云端的應(yīng)用場(chǎng)景,可用于小到幾十毫瓦,大到幾百瓦的訓(xùn)練場(chǎng)景,橫跨全場(chǎng)景提供最優(yōu)算力,麒麟990所使用到的只是端側(cè)AI最基本的一部分。
并且,想要真正實(shí)現(xiàn)萬物互聯(lián)的AI生態(tài),離不開廣大的AI開發(fā)者,那么選擇開發(fā)統(tǒng)一架構(gòu)就是一個(gè)非常關(guān)鍵的決策了。對(duì)于廣大開發(fā)者來說,基于達(dá)芬奇架構(gòu)的統(tǒng)一性,在面對(duì)云端、邊緣側(cè)、端側(cè)等全場(chǎng)景應(yīng)用開發(fā)時(shí),只需要進(jìn)行一次算子開發(fā)和調(diào)試,就可以應(yīng)用于包括麒麟芯片在內(nèi)的不同平臺(tái),大幅降低了遷移成本。
體驗(yàn)最多的AI應(yīng)用大多來源于智能手機(jī),但對(duì)于整個(gè)AI生態(tài)來說,智能手機(jī)只是一個(gè)開端,未來更多的AI應(yīng)用涌現(xiàn)、跨平臺(tái)遷移才能真正實(shí)現(xiàn)無處不在的智慧生活。因此,如果麒麟990真的搭載了達(dá)芬奇架構(gòu)NPU,不止是手機(jī)算力提升那么簡單,以AI之力加速萬物互聯(lián)的智慧時(shí)代。
采用達(dá)芬奇架構(gòu)AI芯片Ascend 910,與之配套的新一代AI開源計(jì)算框架MindSpore。
總結(jié)
- 上一篇: 3D Cube计算引擎加速运算
- 下一篇: 单精度和半精度混合训练