近日,華為在聯(lián)接大會(huì)2018發(fā)布了其全棧全場(chǎng)景AI解決方案,涵蓋了從終端到云端,從AI芯片到深度學(xué)習(xí)訓(xùn)練部署框架的多層解決方案,其在AI領(lǐng)域投入的決心可謂巨大。然而,如果仔細(xì)分析其具體落地,我們會(huì)發(fā)現(xiàn)華為的戰(zhàn)略特別實(shí)用主義,并沒(méi)有去刻意追求技術(shù)上的精致,而是快速做了一個(gè)能滿足需求的框架,以求先占領(lǐng)市場(chǎng)再做迭代。本文將著重對(duì)華為的AI芯片戰(zhàn)略做一分析,并加入一些華為AI芯片對(duì)整個(gè)產(chǎn)業(yè)影響的個(gè)人觀點(diǎn)。
多戰(zhàn)場(chǎng)全覆蓋:華為的雄心壯志
華為在本次大會(huì)上公布了其AI戰(zhàn)略,涉及的產(chǎn)品無(wú)論是深度還是廣度都是非常驚人的。首先,從深度來(lái)說(shuō),其AI相關(guān)產(chǎn)品生態(tài)包含了從應(yīng)用接口ModelArt(用于客戶的應(yīng)用直接接入AI功能),中層深度學(xué)習(xí)軟件框架MindSpore,軟硬件接口層CANN,直到專用硬件Ascend系列,最終可以為終端和云端的應(yīng)用賦能。
華為的AI戰(zhàn)線之深可謂是全球一流,僅有Google、百度等技術(shù)導(dǎo)向明顯的互聯(lián)網(wǎng)公司可以與之匹敵(Google擁有最流行的深度學(xué)習(xí)框架TensorFlow和芯片TPU,百度則擁有深度學(xué)習(xí)框架PaddlePaddle和芯片XPU),而諸如微軟、亞馬遜、騰訊等其他云服務(wù)領(lǐng)域廠商的戰(zhàn)線深度,尤其是在硬件領(lǐng)域的投入決心,都遠(yuǎn)遠(yuǎn)不及華為。
華為的戰(zhàn)線如此之深,究其原因無(wú)外乎是“有縱深才能有壁壘”。
對(duì)于華為這樣的巨頭公司而言,只有把握住了生態(tài)鏈上的每一個(gè)環(huán)節(jié),把開(kāi)發(fā)者和用戶的整個(gè)使用循環(huán)全部保留在自己的生態(tài)圈內(nèi),才能形成真正的壁壘,否則只要在任何環(huán)節(jié)存在空白或者弱項(xiàng),就有被競(jìng)爭(zhēng)對(duì)手或者新興公司單點(diǎn)突破的機(jī)會(huì)。而這樣的壁壘一旦形成,不僅僅可以完成對(duì)于競(jìng)爭(zhēng)對(duì)手的防御,更可以在整體生態(tài)上獲得極高的利潤(rùn)——由于完整技術(shù)棧的不可替代性,從而可以收獲大量利潤(rùn)。Nvidia就是把自己凡是能接觸到的生態(tài)環(huán)節(jié)都打通并做到極致的公司,從而產(chǎn)生了極高的壁壘:硬件上有GPU,深度學(xué)習(xí)框架和軟硬件接口層有CuDNN和TensorRT,因此在這幾年深度學(xué)習(xí)人工智能高速發(fā)展中,Nvidia幾乎占據(jù)了不可替代的地位。
然而,Nvidia人工智能生態(tài)中的底層硬件GPU卻存在破綻,由于GPU對(duì)于人工智能算法的支持并非完美,因此造成了計(jì)算效率不高,也引得群雄逐鹿,眾多公司紛紛進(jìn)入人工智能芯片的戰(zhàn)場(chǎng)。從這個(gè)角度來(lái)看華為正在做挑戰(zhàn)Nvidia的事情,借著Nvidia GPU做人工智能效率低的弱點(diǎn),希望構(gòu)建自主的技術(shù)生態(tài)來(lái)取而代之。
出了縱向深度之外,華為的戰(zhàn)線橫向也鋪得很開(kāi)。一旦有了一個(gè)設(shè)計(jì)完善的縱向框架,那么把這個(gè)框架在不同算力需求尺度上推廣上將是非常容易的,對(duì)于華為這樣以執(zhí)行力強(qiáng)著稱的公司來(lái)說(shuō)這樣的平推戰(zhàn)術(shù)更是得心應(yīng)手。一旦戰(zhàn)略的深度和廣度上都得到良好的執(zhí)行,其最終的收益將是乘數(shù)效應(yīng)(即收益正比于深度x廣度),從而帶來(lái)驚人的回報(bào)。從華為的戰(zhàn)略廣度來(lái)看,既包含終端(低功耗,中低算力),也包含邊緣(中等功耗,中等算力)和云(高功耗,高算力)。在之前,華為的業(yè)務(wù)領(lǐng)域早已包含了從端(華為/榮耀手機(jī)以及智能家電)到云(華為云),因此在之前的業(yè)務(wù)上再部署推廣人工智能可謂是水到渠成。
唯快不破:“達(dá)芬奇”架構(gòu)
華為同時(shí)注重深度和廣度的人工智能戰(zhàn)略是以技術(shù)為基石的,而其技術(shù)棧中最具有挑戰(zhàn)性,同時(shí)也是最具有區(qū)分度的就是底層芯片。為了滿足華為戰(zhàn)略上的需求,其芯片技術(shù)需要滿足以下需求:
以上四點(diǎn)要同時(shí)滿足是非常困難的,尤其是一些非常癡迷于技術(shù)的公司,往往會(huì)選擇去探索新的芯片架構(gòu)以把前三個(gè)需求做到極致,這也就意味著放棄了第四個(gè)能快速上市的需求,因?yàn)樾录軜?gòu)往往意味著較長(zhǎng)的研發(fā)周期和較大的風(fēng)險(xiǎn),難以做到快速上市。而華為的選擇則是在傳統(tǒng)架構(gòu)上做足夠的工程優(yōu)化,并不追求極致性能,但求能滿足用戶需求并快速落地。與之對(duì)應(yīng)的是華為使用在Ascend系列芯片中的達(dá)芬奇架構(gòu)。
從Ascend芯片的架構(gòu)來(lái)看,其實(shí)就是傳統(tǒng)的ARM核+AI加速器的模式,而其AI加速器就是達(dá)芬奇核心。達(dá)芬奇核心從架構(gòu)上看起來(lái)也并沒(méi)有使用炫技式的前沿技術(shù),而是簡(jiǎn)單直接地把計(jì)算用的乘加器(MAC)按照不同的計(jì)算組織成不同的方式,并搭配標(biāo)準(zhǔn)的數(shù)據(jù)緩存。當(dāng)要做人工智能相關(guān)的計(jì)算時(shí),可以使用按cube(“三維立方”) 模式組織的MAC群,從而支持相關(guān)計(jì)算。當(dāng)需要其他常規(guī)計(jì)算時(shí),則可以使用矢量或標(biāo)量計(jì)算MAC。對(duì)于不同規(guī)模的芯片,可以通過(guò)放置不同數(shù)量的達(dá)芬奇核心來(lái)滿足需求,因此同一個(gè)達(dá)芬奇核心的設(shè)計(jì)可以靈活地滿足華為戰(zhàn)略橫向上不同應(yīng)用的需求。
這次的大會(huì)上,華為發(fā)布了Ascend 910和Ascend 310,其中Ascend 910針對(duì)云端應(yīng)用,使用7nm工藝在350W的功耗上實(shí)現(xiàn)了256 TOPS半精度浮點(diǎn)數(shù)算力或512 TOPS 8位整數(shù)算力,并且集成了128通道全高清視頻解碼器;而Ascend 310針對(duì)邊緣應(yīng)用,使用12nm工藝在7W的功耗上實(shí)現(xiàn)了8 TOPS半精度浮點(diǎn)數(shù)算力或16 TOPS 8位整數(shù)算力,并且集成了單通道全高清視頻解碼器。從中,我們可以看到華為的戰(zhàn)略橫向野心很大,但是第一個(gè)落地的市場(chǎng)看來(lái)還是機(jī)器視覺(jué)市場(chǎng)。
從公布的芯片性能上來(lái)看,這次Ascend 910以及Ascend 310特意提到了視頻解碼器,顯然是與視頻應(yīng)用有關(guān);此外,達(dá)芬奇架構(gòu)中的cube式MAC陣列估計(jì)也是為了同時(shí)兼顧云端訓(xùn)練應(yīng)用和機(jī)器視覺(jué)推理應(yīng)用而做的選擇。從技術(shù)上看,cube式MAC陣列非常適合卷積神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)是目前機(jī)器視覺(jué)應(yīng)用最流行的模型,而機(jī)器視覺(jué)應(yīng)用則可以說(shuō)是這一波人工智能應(yīng)用中落地幅度最大的。在卷積神經(jīng)網(wǎng)絡(luò)中,卷積計(jì)算的形式(如下圖)可以被達(dá)芬奇的cube式MAC陣列高效支持,而決策樹(shù)、貝葉斯等其他常見(jiàn)機(jī)器學(xué)習(xí)算法在cube式MAC陣列上運(yùn)行卻不見(jiàn)得有什么優(yōu)勢(shì),因此可以猜測(cè)達(dá)芬奇的架構(gòu)設(shè)計(jì)首要目的是為了支持卷積神經(jīng)網(wǎng)絡(luò)推理,而優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)推理就意味著主打機(jī)器視覺(jué)。
換句話說(shuō),達(dá)芬奇架構(gòu)是在通用性上有意識(shí)地做了折衷以換取較合理的開(kāi)發(fā)時(shí)間和成本。另一方面,做云端訓(xùn)練的時(shí)候由于數(shù)據(jù)往往是批量到來(lái),因此使用cube式MAC陣列也能一次處理一個(gè)批次中的不同并行數(shù)據(jù),從而也能較好地支持訓(xùn)練。然而,如果從從架構(gòu)上做比較,cube式的MAC陣列的效率相比Nvidia GPU的SIMD架構(gòu)未必會(huì)有本質(zhì)上的提升,因此從訓(xùn)練的角度來(lái)看達(dá)芬奇架構(gòu)可以說(shuō)是Nvidia GPU的替代者,但很難說(shuō)是超越者。
我們不妨將達(dá)芬奇架構(gòu)與目前最熱門(mén)的兩種商用人工智能芯片架構(gòu)做比較,即Nvidia的GPU和Google的TPU。Nvidia的GPU架構(gòu)源自經(jīng)典的GPU多核并行架構(gòu),為了優(yōu)化人工智能計(jì)算,加入了對(duì)于矩陣運(yùn)算的優(yōu)化支持(Tensor Core)。但是GPU并非天生為人工智能而生,因此在卷積神經(jīng)網(wǎng)絡(luò)推理等主流應(yīng)用上,GPU架構(gòu)的效率并不高,因此華為達(dá)芬奇為卷積神經(jīng)網(wǎng)絡(luò)優(yōu)化過(guò)的架構(gòu)相比GPU的計(jì)算效率要強(qiáng)不少。與Google的TPU相比,達(dá)芬奇架構(gòu)則顯得更加簡(jiǎn)單直接。
TPU上使用了優(yōu)美的脈動(dòng)陣列(systolic array)架構(gòu),該架構(gòu)雖然很久之前就被人們提出,但是遲遲沒(méi)有找到合適的應(yīng)用,因此TPU采用脈動(dòng)陣列從某種意義上可以說(shuō)是重新發(fā)明了脈動(dòng)陣列,給了脈動(dòng)陣列以新生。脈動(dòng)陣列的優(yōu)勢(shì)是對(duì)于內(nèi)存帶寬的需求大大減少,但是問(wèn)題在于難以做小,一旦做小了效率就會(huì)大大下降——在TPU等級(jí)的云端高算力應(yīng)用脈動(dòng)陣列是合適的,但是在終端低算力低功耗應(yīng)用中脈動(dòng)陣列的效率就不高。因此達(dá)芬奇架構(gòu)相比TPU的脈動(dòng)陣列來(lái)說(shuō)更靈活,能滿足不同算力需求,也即滿足了華為AI戰(zhàn)略中的橫向部分。
最終比拼的還是生態(tài)
從之前的分析中,我們的結(jié)論是華為的達(dá)芬奇架構(gòu)是一個(gè)出色的架構(gòu),與Nvidia的GPU和Google的TPU相比性能并不落下風(fēng),但是其可伸縮性卻遠(yuǎn)好于GPU和TPU,能快速部署到多個(gè)不同算力等級(jí)的應(yīng)用中。為了能充分發(fā)揮可伸縮性強(qiáng)的優(yōu)勢(shì),華為的AI芯片必須能盡快進(jìn)入多個(gè)不同的應(yīng)用領(lǐng)域,因此最終比拼的還是綜合生態(tài)而非一兩個(gè)特定應(yīng)用上的性能對(duì)比,正如兩軍交戰(zhàn)最終看的是能否實(shí)現(xiàn)戰(zhàn)略意圖而并不比糾結(jié)于一兩座城市的得失。那么,在與Google和Nvidia等生態(tài)玩家的比拼中,華為有哪些優(yōu)勢(shì)和挑戰(zhàn)呢?
從公司基因來(lái)看,Google是一家技術(shù)驅(qū)動(dòng)的互聯(lián)網(wǎng)公司,Nvidia是芯片硬件公司,而華為則是設(shè)備提供商。Google一切業(yè)務(wù)的源頭都是互聯(lián)網(wǎng),因此也希望把一切新擴(kuò)展的業(yè)務(wù)規(guī)劃到互聯(lián)網(wǎng)的范疇中。Google屬于第一批看到人工智能潛力的公司,在自己的業(yè)務(wù)中早早就用上了人工智能,并開(kāi)發(fā)了全球最流行的深度學(xué)習(xí)框架TensorFlow。
當(dāng)人工智能得到更多認(rèn)可后, Google Cloud上開(kāi)放了深度學(xué)習(xí)應(yīng)用接口給用戶使用,并且在發(fā)現(xiàn)人工智能計(jì)算需要新一代芯片后著手研發(fā)了TPU。對(duì)于Google來(lái)說(shuō),最關(guān)鍵的生態(tài)環(huán)節(jié)在于人工智能入口即TensorFlow,一旦TensorFlow成為人工智能的絕對(duì)主流框架,那么Google就將成為制訂下一代人工智能標(biāo)準(zhǔn)化實(shí)施方案的主導(dǎo)者,這可以說(shuō)與當(dāng)年Google把握了互聯(lián)網(wǎng)搜索入口如出一轍。另一方面TPU其實(shí)只是其生態(tài)中并不怎么重要的一環(huán),事實(shí)上TPU最早是給Google內(nèi)部自己使用以節(jié)省云計(jì)算功耗并加速訓(xùn)練模型用的,Google并沒(méi)有強(qiáng)烈的讓所有用戶都用上TPU的決心。
Nvidia則是底層芯片硬件公司,最關(guān)注的是GPU是否能賣(mài)得足夠好,CuDNN和TensroRT可以認(rèn)為是GPU在人工智能時(shí)代的驅(qū)動(dòng)程序,但卻不是Nvidia的主要盈利點(diǎn),而Nvidia更不會(huì)嘗試去做人工智能時(shí)代入口之類的嘗試,而是會(huì)更傾向于把自己定義為“人工智能計(jì)算的賦能者”。
相比Google和Nvidia,華為事實(shí)上在一個(gè)更中間的位置,因?yàn)槿A為是一個(gè)解決方案提供商,最終是為了解決客戶的需求,因此其解決方案中既要包含硬件又要包含軟件。華為在底層硬件和上層軟件接口上都有與Nvidia和Google重合競(jìng)爭(zhēng)的部分,但是其解決方案提供者的地位則是與Nvidia以及Google都沒(méi)有任何競(jìng)爭(zhēng)。
舉例來(lái)說(shuō),如果中國(guó)某零售巨頭要做智能零售解決方案,需要高速邊緣服務(wù)器,這樣的公司將會(huì)是華為的目標(biāo)客戶,卻并非Google或Nvidia的目標(biāo)客戶,因?yàn)檫@三家公司中只有華為有意愿給這樣的客戶提供服務(wù)器軟硬件以及云端接入的完整解決方案。而此次發(fā)布的Ascend芯片則很明顯是瞄準(zhǔn)了安防、智能零售等新興機(jī)器視覺(jué)解決方案市場(chǎng),在這些市場(chǎng)Nvidia和Google的基因決定了它們都不會(huì)涉足。
雖然目前華為和Google以及Nvidia在邊緣計(jì)算解決方案領(lǐng)域并沒(méi)有直接競(jìng)爭(zhēng),但是隨著華為在云端布局加深,與Nvidia和Google將會(huì)有正面競(jìng)爭(zhēng)。如前所述,Google的TensorFlow是手中的一張王牌,憑著TensorFlow的開(kāi)放性以及社區(qū)建設(shè),目前TensorFlow已經(jīng)能完美支持多種不同的硬件平臺(tái),另一方面華為的MindSpore配合CANN則更像是面對(duì)自家芯片做的定制化解決方案,性能卓越但是開(kāi)放性卻可能會(huì)成為一個(gè)挑戰(zhàn)。另一方面,在硬件層面,達(dá)芬奇如果想徹底戰(zhàn)勝Nvidia的GPU或許還需要在芯片架構(gòu)上更進(jìn)一步,如果無(wú)法對(duì)GPU有數(shù)量級(jí)的性能優(yōu)勢(shì),最終恐怕還是會(huì)陷入苦戰(zhàn)。
對(duì)AI芯片行業(yè)的影響
這次華為大舉進(jìn)軍AI芯片,是AI芯片領(lǐng)域的一個(gè)重要事件。天下之勢(shì),分久必合,合久必分,最初的系統(tǒng)廠商如IBM,SUN等的系統(tǒng)都是包含了自研芯片,直到以Intel為代表的標(biāo)準(zhǔn)化處理器芯片崛起以及計(jì)算市場(chǎng)利潤(rùn)變薄后這些系統(tǒng)公司才逐漸放棄自研芯片而轉(zhuǎn)而采用Intel的標(biāo)準(zhǔn)化處理器芯片;而AI市場(chǎng)目前看來(lái)潛力巨大,不同場(chǎng)景差異化大而且對(duì)于芯片效率有很高的需求,這也就為系統(tǒng)廠商重新開(kāi)始自研芯片提供了足夠的動(dòng)力。 我們認(rèn)為華為這次自研AI芯片是系統(tǒng)廠商自研芯片趨勢(shì)的延續(xù)。
在華為之前,已經(jīng)有Google、Facebook、亞馬遜、阿里巴巴、百度等諸多互聯(lián)網(wǎng)系統(tǒng)廠商開(kāi)始了AI芯片研發(fā),而華為作為中國(guó)芯片研發(fā)能力最強(qiáng)的系統(tǒng)廠商,進(jìn)入AI芯片領(lǐng)域可謂是理所當(dāng)然,因?yàn)閷?duì)于系統(tǒng)廠商來(lái)說(shuō)擁有了自研芯片才能擁有真正的核心競(jìng)爭(zhēng)力。華為這次進(jìn)軍AI芯片預(yù)計(jì)將會(huì)引發(fā)更多系統(tǒng)廠商進(jìn)入AI芯片領(lǐng)域,估計(jì)???、大華、曠視、商湯、依圖等都有自研芯片(或者與其他芯片公司合作研發(fā)自己專屬的定制化芯片)的商業(yè)動(dòng)力,我們?cè)诓痪玫膶?lái)預(yù)計(jì)會(huì)看到更多系統(tǒng)廠商發(fā)布自己的芯片,反之缺乏自研芯片能力的系統(tǒng)廠商的生存空間將會(huì)受到擠壓,要么逐漸消失,要么找到新的商業(yè)模式。
另一方面,對(duì)于AI芯片初創(chuàng)公司來(lái)說(shuō),華為的AI芯片目前并沒(méi)有對(duì)外銷售的打算,因此華為并非直接競(jìng)爭(zhēng)對(duì)手。此外,由于AI芯片細(xì)分市場(chǎng)多,差異化大,華為的AI芯片更有可能發(fā)揮鯰魚(yú)效應(yīng),激勵(lì)這些AI芯片初創(chuàng)公司去尋找華為無(wú)暇顧及的細(xì)分市場(chǎng),例如功耗小于1W的超低功耗市場(chǎng)等等。
此外,華為的Ascend系列AI芯片也并非不可戰(zhàn)勝,其架構(gòu)如前所述并非屬于常人無(wú)法想象的黑科技,而更像是一款經(jīng)過(guò)仔細(xì)工程優(yōu)化的AI加速器。因此AI芯片公司如果擁有下一代技術(shù),即使與華為在云端正面競(jìng)爭(zhēng)也有勝算。
最后,我們必須看到不少AI芯片初創(chuàng)公司實(shí)際上也是系統(tǒng)廠商,其AI芯片也是主要供自己的系統(tǒng)使用,如Rokid等。對(duì)于這類自研AI芯片的初創(chuàng)系統(tǒng)廠商來(lái)說(shuō),華為施加的競(jìng)爭(zhēng)壓力會(huì)更大,因?yàn)槿A為實(shí)際上走了和這些廠商一樣的道路,本來(lái)這些初創(chuàng)公司系統(tǒng)中的亮點(diǎn)是自研芯片,但是現(xiàn)在相對(duì)于同樣擁有自研芯片的華為來(lái)說(shuō)這個(gè)就不再成為亮點(diǎn)了。對(duì)于這些廠商,如何找到屬于自己的差異化市場(chǎng)避開(kāi)華為的鋒芒就成了目前亟待解決的問(wèn)題。