當(dāng)下,寒武紀(jì)、Graphcore、Wave Computing 等 AI 芯片設(shè)計(jì)企業(yè)都想要以能耗優(yōu)勢(shì)攻取市場(chǎng),英特爾也拿出 Nervara 和 Lake Crest 架構(gòu)想徹底取代 GPU,在業(yè)界看來(lái), GPU 在 AI 計(jì)算領(lǐng)域的前景似乎已經(jīng)不容樂(lè)觀了。
但 NVIDIA 則是拿出自 2014 年以來(lái)與 IBM 的技術(shù)合作成果向世界證明:你們錯(cuò)了!
通過(guò)與 IBM 的合作,NVIDIA 證明只要通過(guò)正確的設(shè)計(jì),GPU 還有許多計(jì)算潛力可以挖掘,尚無(wú)須畏懼新興 ASIC 架構(gòu)的挑戰(zhàn),而剛推出的 Power 9 在核心計(jì)算性能與 NVLINK 頻寬比 Power 8 更上一層樓。
?
事實(shí)上,IBM 基于新款處理器和 NVIDIA GPU 的組合也成為美國(guó)能源部超級(jí)計(jì)算機(jī)及 Google 新款資料中心服務(wù)器的架構(gòu)基礎(chǔ),可見過(guò)去由 X86 體系主導(dǎo)的高端計(jì)算架構(gòu)版圖已經(jīng)在二者的合力進(jìn)擊下,開始出現(xiàn)松動(dòng)。
IBM 欲借 AI 浪潮將 Power 架構(gòu)重新推上高峰
Power 架構(gòu)起源于 20 世紀(jì) 70 年代,原始設(shè)計(jì)目標(biāo)是創(chuàng)建一個(gè)大型電話交換網(wǎng)絡(luò),每秒處理至少 300 個(gè)呼叫,預(yù)計(jì)需要 2 萬(wàn)個(gè)機(jī)器指令來(lái)處理每個(gè)呼叫,同時(shí)保持實(shí)時(shí)回應(yīng),因此認(rèn)為有 12 MIPS 性能的處理器是必要的。這個(gè)規(guī)格要求在當(dāng)時(shí)可以說(shuō)是非常激進(jìn),主流的復(fù)雜指令集架構(gòu)基本上不可能達(dá)到這個(gè)目標(biāo)。
但后來(lái)開發(fā)者另辟蹊徑,因?yàn)檫@臺(tái)機(jī)器只需要執(zhí)行 I / O,分支,添加寄存器,移動(dòng)數(shù)據(jù)在寄存器和存儲(chǔ)器之間,并且不需要特別的指令來(lái)執(zhí)行大量的計(jì)算,因此最終在架構(gòu)設(shè)計(jì)方面省略了很多傳統(tǒng)處理器所需要的結(jié)構(gòu)部分。
這種單純化的設(shè)計(jì)理念,把每個(gè)復(fù)雜操作的每個(gè)步驟都由一個(gè)機(jī)器指令明確指定,并且名確定義所有指令都需要在相同的恒定時(shí)間內(nèi)完成,而這樣的架構(gòu)后來(lái)也被稱為 RISC,沒錯(cuò),Power 架構(gòu)正是所有 RISC 芯片的始祖。后續(xù)在核心設(shè)計(jì)的許多技術(shù)創(chuàng)新,比如說(shuō) Out of Order(亂序執(zhí)行),以及寄存器重命名等特性,都被幾乎后來(lái)所有處理器架構(gòu)所仿效。
到 1975 年,電話交換機(jī)項(xiàng)目被取消,但這個(gè) RISC 處理器的架構(gòu)概念留下來(lái)持續(xù)發(fā)展,最終在 1990 年推出了 Power 處理器。Power 架構(gòu)曾是服務(wù)器主流架構(gòu)之一,其特點(diǎn)就是計(jì)算能力特強(qiáng),及擁有極高的帶寬表現(xiàn),針對(duì)特定計(jì)算負(fù)載能夠有遠(yuǎn)比同一代 X86 更好的效能表現(xiàn)。而后期 IBM 也曾開發(fā)出針對(duì)低功耗環(huán)境的嵌入式 Power 技術(shù),甚至曾作為主流游戲機(jī)的核心,比如說(shuō)索尼的 PS2、PS3,以及任天堂 N64、Game cube、wii、Wii U,都是基于 Power 架構(gòu),Power 架構(gòu)可說(shuō)風(fēng)生水起,不可一世。
但后來(lái)在服務(wù)器領(lǐng)域,成本與兼容性取代了絕對(duì)性能,即便曾推出世界首款刀片服務(wù)器,曾以深藍(lán)的名號(hào)打敗世界圍棋冠軍,Power 架構(gòu)也逐漸走入其他 RISC 高性能處理器的老路,步向衰亡,X86 架構(gòu)幾乎一統(tǒng)服務(wù)器核心。
另外一方面,Power 架構(gòu)在低功耗產(chǎn)品的發(fā)展受到 ARM 的狙殺,游戲機(jī)核心也被 X86 和 ARM 架構(gòu)所取代,乍看之下,Power 架構(gòu)曾經(jīng)一度走上絕路,所有的客戶幾乎都喪失殆盡,只能在少數(shù)通信設(shè)備以及金融業(yè)高端服務(wù)器市場(chǎng)茍延殘喘。
但 IBM 并沒有像其他 RISC 公司一樣選擇直接放棄,而是通過(guò)完全開放的方式,意圖拯救即將完全死亡的生態(tài),OpenPOWER 也就是在這個(gè)時(shí)代背景下產(chǎn)生的組織。
OpenPOWER 創(chuàng)始會(huì)員有 Google、Mellanox、NVIDIA,以及當(dāng)時(shí)在服務(wù)器領(lǐng)域相當(dāng)出名的泰安 (Tyan) 計(jì)算機(jī),OpenPOWER 組織把相關(guān)的核心技術(shù) IP 對(duì)外開放,提供會(huì)員一整套可參考的設(shè)計(jì)以及相關(guān)的軟硬件環(huán)境,會(huì)員可對(duì) Power 架構(gòu)深度定制化,滿足不同應(yīng)用所需要的計(jì)算彈性,相關(guān)生態(tài)因此開始回溫。而 IBM 在開放 Power 架構(gòu)的同時(shí),也持續(xù)發(fā)展自有的 Power 架構(gòu),其最新的架構(gòu)命名為 Power 9。
AI 時(shí)代所帶來(lái)的各種計(jì)算需求把目前的計(jì)算架構(gòu)逼到極限,CPU 已經(jīng)不敷使用,GPU 也正面臨瓶頸與挑戰(zhàn),未來(lái)看似是 ASIC 的天下?但 IBM 和 NVIDIA 的合作向世界宣告,ASIC 要取代 GPU 沒有那么容易!當(dāng)然,這是著眼于 NVIDIA 與 IBM 合作開發(fā)的 NVLINK 技術(shù)。
然而 Power 架構(gòu)的優(yōu)勢(shì)還不止于此,根據(jù)官方數(shù)據(jù),IBM POWER9 的最大 I/O 帶寬是 Intel x86 處理器的 9.5 倍,可支持存儲(chǔ)器容量是 2.6 倍,高效能核心數(shù)量為 x86 的 2 倍,存儲(chǔ)器帶寬則是 x86 的 1.8 倍。更重要的是,通過(guò) NVLINK 2.0,CPU 與 GPU 之間的互連帶寬達(dá)到 X86 服務(wù)器目前使用的 PCIe 3.0 的 9 倍,大大舒緩了 GPU 等待數(shù)據(jù)傳輸所造成的計(jì)算能力浪費(fèi)。
Power 9 也不是指針對(duì)了 NVIDIA 的計(jì)算架構(gòu)作優(yōu)化,事實(shí)上,它針對(duì)的是所有平臺(tái),包括 AMD、Xilinx,以及其他 AI 計(jì)算方案:IBM 與 AMD、ARM、華為等公司合作組件 CCIX 聯(lián)盟,推出集成了 CCIX 技術(shù),為 Power 9 提供帶寬更高的總線加速器。就架構(gòu)定義上來(lái)看,可以當(dāng)作開放規(guī)格的 NVLINK,其最高帶寬表現(xiàn)也相近,IBM 也為此總線技術(shù)取名為 BlueLINK,以作為和 NVLINK 的區(qū)分。
另外,IBM 也針對(duì) Power 9 環(huán)境推出了分布式深度學(xué)習(xí)軟件 (Distributed Deep Learning;DDL),可以讓處理器的 100% 擴(kuò)容得到 95% 的效率增長(zhǎng),相較起一般公司,比如說(shuō) Facebook 的 89% 擴(kuò)容效率明顯高出不少。
IBM Power 計(jì)算架構(gòu)向世界展示了它的強(qiáng)大,而相較英特爾為主的 X86 體系逐漸走向封閉,其在支持 NVLINK 之類的獨(dú)家規(guī)格的同時(shí),也和其他計(jì)算架構(gòu)供應(yīng)商合作推出了基于 CCIX 接口的 BlueLINK 開放架構(gòu),其欲取代 X86 成為 AI 計(jì)算領(lǐng)域通用平臺(tái)的的意圖非常明顯。
從 IBM 的技術(shù)布局看起來(lái)野心不小,且專有架構(gòu)與開放架構(gòu)兼容并蓄,最大化自己的應(yīng)用格局,也明顯有向目前以 X86 為主的 AI 生態(tài)發(fā)起挑戰(zhàn)的意味。NVIDIA 與 IBM 這個(gè)組合在 Power 9 第一波攻勢(shì)中證明了架構(gòu)的優(yōu)勢(shì),不僅彌補(bǔ) GPU 架構(gòu)在數(shù)據(jù)傳輸上的弱點(diǎn),也更好的發(fā)掘了 GPU 的計(jì)算潛力。
依靠與 IBM 的合作而得以發(fā)揮計(jì)算實(shí)力的 GPU 架構(gòu),似乎又能重新站上競(jìng)爭(zhēng)的風(fēng)口,與即將到來(lái)的新架構(gòu)一較高下,芯片成本的弱勢(shì)暫時(shí)也不是問(wèn)題,畢竟專業(yè)計(jì)算注重的還是整體性能表現(xiàn),而不是芯片本身的規(guī)模與成本。當(dāng)然,GPU 架構(gòu)本身的功耗表現(xiàn)和 ASIC 相較之下還是有落差,但若能針對(duì)軟硬件的統(tǒng)合與優(yōu)化來(lái)大幅減少機(jī)器學(xué)習(xí)訓(xùn)練過(guò)程所需要的時(shí)間,也等同節(jié)省了功耗,那么就整體來(lái)看,差別就不是那么明顯。
也因?yàn)?NVIDIA 和 IBM 在 NVLINK 技術(shù)的合作時(shí)程較早,其他計(jì)算架構(gòu)就算依靠開放規(guī)格加入 Power 平臺(tái),恐怕必須等到新一代產(chǎn)品才有辦法實(shí)現(xiàn),在時(shí)程上也將落后 NVIDIA 和 IBM 的組合半年到一年以上。而這一年也就成為 NVIDIA 徹底改善產(chǎn)品設(shè)計(jì)的機(jī)會(huì):不論是對(duì)現(xiàn)有 GPU 架構(gòu)進(jìn)行深度改造,亦或者是改變以 GPU 為核心的策略,針對(duì) AI 計(jì)算領(lǐng)域推出專有計(jì)算架構(gòu)。
但值得注意的是,IBM 提出的架構(gòu)還是以服務(wù)器市場(chǎng)為主,諸如在汽車或者是其他終端的 AI 計(jì)算領(lǐng)域,Power 架構(gòu)恐怕就幫不上忙。NVIDIA 雖可憑借與 IBM 的合作鞏固高效能計(jì)算市場(chǎng),但是在嵌入式領(lǐng)域,恐怕就必須要提出更高效率的架構(gòu)。
以汽車產(chǎn)業(yè)為例,其最新 Pegasus 自動(dòng)駕駛平臺(tái)高達(dá) 500W 的功耗,恐怕就不是主流汽車廠能夠接受的程度,雖幸好 2020 年之前市場(chǎng)上還不會(huì)有可與目前 NVIDIA 相提并論的自動(dòng)駕駛方案出現(xiàn),且 L5 自動(dòng)駕駛在未來(lái)幾年也難以普及,但 NVIDIA 仍須及早做好準(zhǔn)備,借以應(yīng)對(duì)未來(lái)的競(jìng)爭(zhēng)。
英特爾與 NVIDIA 矛盾漸深,IBM 趁虛而入
英特爾從機(jī)器學(xué)習(xí)問(wèn)世方法以來(lái),就一直希望能夠以自家 X86 架構(gòu)取代 GPU 計(jì)算,但 GPU 架構(gòu)在學(xué)習(xí)方面的優(yōu)勢(shì)太過(guò)強(qiáng)大,且英特爾本身的架構(gòu)發(fā)展也陷入停頓,英特爾也只好看著 NVIDIA 在 AI 產(chǎn)業(yè)攻城掠地,自己只能一旁艷羨。
但后來(lái)英特爾先后并購(gòu)了 Altera 以及 NERVANA 這兩家公司,欲以 FPGA 架構(gòu)重新進(jìn)入機(jī)器學(xué)習(xí)領(lǐng)域,且又強(qiáng)調(diào) FPGA 的超低延遲推理性能優(yōu)勢(shì),一時(shí)之間 NVIDIA 也大為緊張。
英特爾對(duì) AI 產(chǎn)業(yè)野心勃勃,不僅在計(jì)算架構(gòu),也針對(duì)自動(dòng)駕駛領(lǐng)域買下 Mobileye,所有的商業(yè)決策幾乎都是針對(duì) NVIDIA 而來(lái),雙方雖仍是合作伙伴,但實(shí)際上已經(jīng)勢(shì)同水火。
在此情形下,NVIDIA 轉(zhuǎn)向與 IBM 的合作也就順理成章,一方面,IBM 的 Power 架構(gòu)與 NVIDIA 緊密合作,提供原生 NVLINK 支持,大幅強(qiáng)化 GPU 計(jì)算性能,另一方面,IBM 也憑借 GPU 的計(jì)算能力,打下 Google 和美國(guó)能源部這兩個(gè)大客戶,證明在高性能計(jì)算領(lǐng)域,Power 架構(gòu)仍然寶刀未老,二者的結(jié)合正撼動(dòng)著英特爾一手建立起的 X86 服務(wù)器帝國(guó)。
GPU 因本身架構(gòu)與平臺(tái)限制被 ASIC 步步緊逼
GPU 在 AI 計(jì)算領(lǐng)域的優(yōu)劣勢(shì)可以用個(gè)簡(jiǎn)單的例子說(shuō)明:GPU 進(jìn)行機(jī)器學(xué)習(xí)的訓(xùn)練時(shí),就好像數(shù)千個(gè)小學(xué)生同時(shí)計(jì)算幾千道小學(xué)數(shù)學(xué)題目,而 CPU 則象是大學(xué)生,但一所學(xué)校只有幾個(gè)大學(xué)生,要同時(shí)做幾千道小學(xué)生題目,每道題目解題耗時(shí)雖短于 GPU,但因?yàn)轭}目數(shù)量太多,必須排序來(lái)做,導(dǎo)致實(shí)際解題時(shí)間其實(shí)遠(yuǎn)短于解題后答案輸出以及等待下一道題目的耗時(shí),整體訓(xùn)練效率也明顯不如 GPU。
而在推理的場(chǎng)景上,通常來(lái)自終端的要求量要遠(yuǎn)少于訓(xùn)練時(shí)的計(jì)算量,幾千個(gè)小學(xué)生分搶題目后,通常最終只有幾個(gè)小學(xué)生能實(shí)際承擔(dān)到計(jì)算工作,那么問(wèn)題來(lái)了,回歸到 GPU 本身的計(jì)算能力只有小學(xué)生的程度,在工作量不大的情況下,GPU 無(wú)從發(fā)揮大量平行計(jì)算的優(yōu)勢(shì),于是基本解題能力上的弱勢(shì)就顯現(xiàn)出來(lái)了。
事實(shí)上,在一般推理應(yīng)用場(chǎng)景上,GPU 的推理能力在不少情況下可能要小于 CPU,更不用提基本設(shè)計(jì)就已經(jīng)是完全神經(jīng)網(wǎng)絡(luò)化的 ASIC 方案,以及可根據(jù)場(chǎng)景調(diào)整計(jì)算規(guī)模的 FPGA。雖然 NVIDIA 后來(lái)提出 TensorCore 來(lái)解決推理性能低下的問(wèn)題,但這是額外的計(jì)算單元,而非原本 GPU 架構(gòu)的能力,這個(gè)作法也等同額外增加了 GPU 計(jì)算功耗的負(fù)擔(dān)。
最后,GPU 原本就是設(shè)計(jì)給游戲圖像處理市場(chǎng),而非純粹計(jì)算,所以在架構(gòu)上必須考慮到圖像處理所需的計(jì)算彈性,這點(diǎn)導(dǎo)致近半晶體管無(wú)法被用在實(shí)際計(jì)算工作上。且因?yàn)橐龅綇椥浴⒖?a target="_blank">編程設(shè)計(jì),設(shè)計(jì)上就必須考慮到一定程度的可重構(gòu)性。換言之,對(duì) AI 計(jì)算而言“冗余”的部分太大,無(wú)法像 ASIC 僅需要針對(duì)特定的計(jì)算工作設(shè)計(jì)電路,因此可大幅“去蕪存菁”,只留下必要的部分。
半導(dǎo)體芯片設(shè)計(jì)中的晶體管規(guī)模不但代表了成本,也代表了功耗,額外的部分越多,消耗的電力和生產(chǎn)成本也越高,而規(guī)模數(shù)一數(shù)二,且近半晶體管無(wú)法投入到 AI 計(jì)算中的缺點(diǎn),就成為 GPU 越來(lái)越被關(guān)注,并同時(shí)被新進(jìn) ASIC 架構(gòu)攻擊的重點(diǎn)。
NVIDIA 推出 NVLINK 期望解決 GPU 計(jì)算的最大瓶頸
而 DT 君也曾經(jīng)在之前的分析提到,未來(lái) AI 計(jì)算芯片的方向,尤其是 ASIC 方面,都走向集成度更高且具備大量片上存儲(chǔ)器的方式,甚至在算法或模型設(shè)計(jì)上進(jìn)行優(yōu)化,盡量讓數(shù)據(jù)可以留在片上存儲(chǔ)器重復(fù)利用,避免數(shù)據(jù)傳輸過(guò)程中所導(dǎo)致的延遲——而這也是 GPU 架構(gòu)設(shè)計(jì)上最被公認(rèn)的弱點(diǎn):考慮到芯片應(yīng)用廣度,以及規(guī)模對(duì)成本及功耗的影響,NVIDIA 或 AMD 都不敢集成容量太大的片上緩存,更何況 GPU 早因大量計(jì)算單元的集成,規(guī)模之大已是數(shù)一數(shù)二。
所以 GPU 在進(jìn)行大量平行計(jì)算時(shí),無(wú)法把大部分計(jì)算完的數(shù)據(jù)暫存在芯片端,而是要通過(guò)總線與主系統(tǒng)來(lái)回溝通搬移數(shù)據(jù),常常造成 GPU 需空轉(zhuǎn)等待數(shù)據(jù)送達(dá)。而目前的主流 PCIe 3.0 總線最大僅能提供 32GB/s 帶寬,剛宣布的 4.0 正式版本雖可達(dá)到 192GB/s 的整體帶寬,但標(biāo)準(zhǔn)才剛公布,相關(guān)方案也要 2018 年稍晚才會(huì)推出,對(duì) NVIDIA 而言,可說(shuō)遠(yuǎn)水救不了近火。
而英特爾偏好開放標(biāo)準(zhǔn),循著 PCIe 規(guī)格的演進(jìn)改進(jìn)自己的總線效率,而不想把 NVIDIA 的 NVLINK 技術(shù)放進(jìn)自己的處理器架構(gòu)中,考慮的因素包含了過(guò)去與 NVIDIA 在專利和架構(gòu)授權(quán)上曾發(fā)生過(guò)的爭(zhēng)議,以及未來(lái)英特爾要推廣自有的 AI 計(jì)算架構(gòu),不希望讓 GPU 計(jì)算架構(gòu)優(yōu)勢(shì)持續(xù)下去,因此對(duì) NVLINK 采冷處理的方式。
NVLINK 在 2014 年發(fā)表時(shí),因?yàn)橛⑻貭柕睦涮幚恚琋VIDIA 后來(lái)便決定和 IBM 共同發(fā)展此界面規(guī)格,從 Power 8 架構(gòu)開始支援 NVLINK 1.0 技術(shù),而才剛推出的 Power 9 則是集成了速度更高的 2.0 版,其提供的總帶寬可高達(dá) 300GB/s,很大程度上解決了數(shù)據(jù)傳輸過(guò)程的瓶頸,且因?yàn)?NVLINK 支持了緩存一致性設(shè)計(jì),也同時(shí)能夠有效提升 GPU 的計(jì)算性能。
IBM 打亂英特爾服務(wù)器生態(tài),或?qū)⒁?AI 芯片新戰(zhàn)局
目前在 X86 平臺(tái)上展開的 AI 芯片戰(zhàn)爭(zhēng),GPU 目前遭受的挑戰(zhàn)越來(lái)越大,主要就是周邊的搭配未能如 NVIDIA 之意,導(dǎo)致計(jì)算效率無(wú)法完全發(fā)揮。但借原生 NVLINK 之助,NVIDIA 在 IBM 新的 Power 平臺(tái)上表現(xiàn)可說(shuō)脫胎換骨,這不只是 Power 服務(wù)器本身硬件設(shè)計(jì)上的優(yōu)勢(shì),也同時(shí)是 IBM 配套軟件上的成功,比如說(shuō)分布式深度學(xué)習(xí)軟件發(fā)揮了極大的功效,讓服務(wù)器規(guī)模的增加能帶來(lái)相對(duì)應(yīng)的性能增長(zhǎng),而不是只增加了功耗,卻沒有增加效率。
當(dāng)然,NVIDIA 和 IBM 的合作其實(shí)也是各有所圖,NVIDIA 借 BIM 之力大幅強(qiáng)化 GPU 計(jì)算架構(gòu)的性能表現(xiàn),要在包含英特爾等對(duì)手的方案正式面世前先穩(wěn)住市場(chǎng)。IBM 則是想要在潛藏多年之后重新打進(jìn)服務(wù)器市場(chǎng),正面挑戰(zhàn)英特爾的 X86 生態(tài)霸權(quán),因此在連接能力、各類標(biāo)準(zhǔn)的支持方面盡量做到完美,首波攻勢(shì)雖是和 NVIDIA 聯(lián)手,但長(zhǎng)遠(yuǎn)來(lái)看,還是希望能夠吸引到世界上各大主流計(jì)算方案,而非僅只 NVIDIA 一家。
至于英特爾要如何應(yīng)對(duì)?如果未來(lái)主流計(jì)算架構(gòu)轉(zhuǎn)而支持 IBM 體系,而非 X86,肯定傷害會(huì)很大,英特爾手握 FPGA 生態(tài),未來(lái)完全封閉起來(lái)自己做也不是不可能的事情,但客戶的流失將是無(wú)可避免的后果,如此看來(lái),IBM 的 Power 架構(gòu)已可說(shuō)立于不敗之地。
評(píng)論
查看更多