ChatGPT等AI大模型的發(fā)展,對算力的需求每兩個月增加一倍。
OpenAI每年的支出費用高達(dá)10多億美金。
如果將ChatGPT部署到谷歌搜索中,需要512,820 個 A100 HGX服務(wù)器和總共4,102,568 個 A100 GPU,服務(wù)器和網(wǎng)絡(luò)的總硬件成本超過1,000億美元。
算力,成為制約AI發(fā)展的最關(guān)鍵因素。
如果算力能夠大踏步地發(fā)展,在成本不變的情況下,把算力提升千倍萬倍,比ChatGPT更高級別的智能就一定會出現(xiàn)。
如何能夠千倍萬倍地提升算力?
首先可以肯定的是,現(xiàn)有的各類大算力芯片肯定不行:做一個“裱糊匠”,把算力百分比提升,甚至數(shù)倍提升,是有可能的;但要想多個數(shù)量級的提升算力,“裱糊”的方式肯定是不行的。
要想千倍萬倍地提升算力,必然需要全新的算力平臺!
1 業(yè)務(wù)應(yīng)用和算力基礎(chǔ)
1.1 算力:數(shù)字經(jīng)濟的核心生產(chǎn)力
一切系統(tǒng)的運行,可以歸一到計算。微觀的計算是性能,宏觀的計算是算力。也因此,算力在數(shù)字經(jīng)濟、數(shù)字社會和數(shù)字政府等領(lǐng)域得到廣泛應(yīng)用,算力已經(jīng)在賦能千行百業(yè)。
算力已成為繼熱力、電力之后新的關(guān)鍵生產(chǎn)力。計算力指數(shù)平均每提高1個百分點,數(shù)字經(jīng)濟和GDP將分別增長3.5‰和1.8‰。
如上圖所示,算力規(guī)模與經(jīng)濟發(fā)展水平呈現(xiàn)出顯著的正相關(guān)關(guān)系,算力規(guī)模越大,經(jīng)濟發(fā)展水平越高。
如果我們把這張圖再擴展一下,隨著計算力指數(shù)擴展到1000甚至10000,可以看到計算力指數(shù)其實和GDP是指數(shù)級關(guān)系的。隨著數(shù)字經(jīng)濟的進一步發(fā)展,未來,算力會成為決定GDP發(fā)展的最核心因素。
文獻(xiàn)1:IDC、浪潮、清華全球產(chǎn)業(yè)研究院聯(lián)合發(fā)布的《2021—2022全球計算力指數(shù)評估報告》
文獻(xiàn)2:《算力:數(shù)字經(jīng)濟的核心生產(chǎn)力》,方正梁,人民郵電報
1.2 ChatGPT等AI算力需求指數(shù)級增長
2012年之前,“深度學(xué)習(xí)”主要運行在CPU平臺。2012年,隨著AlexNet等深度學(xué)習(xí)模型的出現(xiàn),對算力需求越來越多,也隨著云計算的普及,基于GPU集群的超大規(guī)模深度學(xué)習(xí)人工智能技術(shù)進入高速發(fā)展階段。
OpenAI在2018年發(fā)布的AI模型算力報告中指出:自2012 年以來,AI訓(xùn)練的算力呈指數(shù)級增長,每 3.4個月翻一倍。這意味著,從2012到2018年,AI算力增長了超過300,000倍。
與2012年的模型相比,2020年提出的模型需要600萬倍的計算能力。據(jù)預(yù)測,從2023到2028年,AI所需算力將再增加100萬倍。
ChatGPT的成功表明:大力真的可以出奇跡!
目前來看,是性能和成本,約束了ChatGPT的能力。
據(jù)測算,ChatGPT 的單次回復(fù)至少要花費 1 美分。在未爆發(fā)前100多萬用戶的時候,OpenAI 每天至少花費 10 萬美元或每月 300 萬美元用于運行成本。如今在數(shù)億用戶的情況下,其運行成本支出將超過50億美金,這個成本對任何一家企業(yè)來說,基本上都無法接受。
如果將ChatGPT部署到谷歌搜索中,需要512,820 個 A100 HGX服務(wù)器和總共4,102,568 個 A100 GPU,服務(wù)器和網(wǎng)絡(luò)的總硬件成本超過1,000億美元。
算力成本高昂,限制了ChatGPT等AI模型的參數(shù)量,也限制了模型的智慧能力,還限制了模型的廣泛使用。
如果有更低廉的成本,ChatGPT可以更加強大和智能,并且能得到更加廣泛的普及。
文獻(xiàn)1:Mehonic A, Kenyon AJ. Brain-inspired computing needs a master plan. Nature 2022;604(7905):255–260.
文獻(xiàn)2:S. Zhu, T. Yu, T. Xu, H. Chen, S. Dustdar, S. Gigan, D. Gunduz, E. Hossain, Y. Jin, F. Lin et al., “Intelligent Computing: The Latest Advances, Challenges and Future”, INTELLIGENT COMPUTING, 3 Jan 2023, Vol 2
文獻(xiàn)3:https://www.forbes.com/sites/johnkoetsier/2023/02/10/chatgpt-burns-millions-every-day-can-computer-scientists-make-ai-one-million-times-more-efficient/
文獻(xiàn)4:https://indianexpress.com/article/technology/tech-news-technology/chatgpt-interesting-things-to-know-8334991/
文獻(xiàn)5:What is GPT-4?, https://blog.localseo.studio/gpt4/
1.3 自動駕駛汽車,又一個算力吞金獸
大部分觀點認(rèn)為:L5級別自動駕駛算力至少需要4,000 TOPS;也有部分觀點認(rèn)為:需要超過10,000 TOPS。
如果自動駕駛進入L5階段,對娛樂的需求必然猛增。隨著傳感器數(shù)量越來越多、感知精度越來越高、AI模型越來越大,并且娛樂需求越來越豐富,各類需求蓬勃發(fā)展,必然需要算力爆發(fā)式增長。
多域融合的綜合算力需求預(yù)計會超過20,000 TOPS。
算力需求是永無止境的,更多、更高的綜合性需求,需要汽車平臺算力快速并且持續(xù)不斷地增長。
1.4 元宇宙,巨量算力支撐虛實融合
元宇宙需要源源不斷的“算力能源”,算力支撐元宇宙虛擬世界的運行以及數(shù)字人等AI智能。要想實現(xiàn)元宇宙級別的體驗,需將算力提升至少10,000倍。
這里舉兩個典型的案例。
案例一:沉浸感所需的16K效果,需要280.7Gbps帶寬。目前的算力基礎(chǔ)設(shè)施,還難以支撐如此高數(shù)據(jù)量的傳輸、處理和存儲。
案例二:一方面,隨著大模型持續(xù)發(fā)展,支撐單個數(shù)字人的AI算力需求急速增長;另一方面,隨著元宇宙快速發(fā)展,數(shù)字人的數(shù)量也會猛增。也因此,元宇宙對AI算力的需求必然是多個數(shù)量級的提升。
文獻(xiàn)1:https://www.zhihu.com/question/39630265/answer/134906922
文獻(xiàn)2-3:電影《頭號玩家》劇照、電影《失控玩家》劇照
1.5 問題的本質(zhì)
整個問題的本質(zhì)在于:落后的算力基礎(chǔ)和先進的業(yè)務(wù)需求之間的矛盾!
硬件算力永遠(yuǎn)無法滿足軟件的需要。并且,隨著AI、自動駕駛、元宇宙等場景和算法的逐漸成熟,業(yè)務(wù)算力需求和落后的算力基礎(chǔ)之間的矛盾更加凸顯,落后的算力基礎(chǔ)限制了上層應(yīng)用的進一步發(fā)展。
文獻(xiàn):電影《讓子彈飛》劇照
2 計算架構(gòu)的發(fā)展現(xiàn)狀和面臨的挑戰(zhàn)
2.1 計算由單CPU串行走向多CPU并行
最開始是單核CPU流水線,在宏觀視角下,單核CPU的指令流是串行執(zhí)行的。
隨著單核性能做到了極限,就不得不通過多核來提升性能,因此就從串行走向了并行,這里的并行是CPU同種架構(gòu)的并行。
從單核到多核,不僅僅只涉及到硬件上的拼湊,也涉及到并行編程的軟件開發(fā)難度,或者說并行計算的駕馭難度高于串行編程。
2.2 再從同構(gòu)并行到異構(gòu)并行
再后來,同構(gòu)多核效率依然不夠,所以就有了通過各種硬件加速器來進行性能加速。
但硬件加速器無法獨立工作,需要有CPU的協(xié)助,所以就成了CPU+XPU的異構(gòu)計算。
異構(gòu)計算主要可以分為三類:基于GPU的異構(gòu)計算,基于FPGA的異構(gòu)計算,基于DSA的異構(gòu)計算。
異構(gòu)計算的最典型案例就是目前數(shù)據(jù)中心常見的GPU服務(wù)器,其他案例如:最開始做大規(guī)模HPC異構(gòu)的天河超算系列,然后就是FPGA即服務(wù)的FaaS,以及谷歌TPU等AI加速。
GPU 并行計算性能效率比CPU高,并且場景覆蓋較多,CUDA生態(tài)成熟。AI的興起,讓GPU成為最佳的平臺。也推高NVIDIA股價,成為全球市值最高的IC公司。
GPU的劣勢在于:性能效率比ASIC/DSA仍有很大差距;對一些輕量級異構(gòu)加速場景,獨立GPU顯得太重。
2.3 異構(gòu)計算存在的問題
異構(gòu)計算面臨的核心挑戰(zhàn),是一個悖論:系統(tǒng)越復(fù)雜,越需要靈活的處理器;但性能挑戰(zhàn)大,越需要我們做定制加速,也就是越不靈活的處理器。這個矛盾的本質(zhì)是,單一的處理器無法兼顧性能和靈活性。再怎么優(yōu)化,仍是治標(biāo)不治本。
異構(gòu)計算中的Host CPU,已經(jīng)性能瓶頸,摩爾定律失效。
異構(gòu)計算中的加速處理器,決定了整個系統(tǒng)的性能/靈活性特征:
GPU靈活性較好,但性能效率不夠極致;并且性能也逐漸瓶頸。
DSA性能好;但靈活性差,難以適應(yīng)算法的多變;架構(gòu)碎片化;落地困難。
FPGA功耗和成本高,定制開發(fā),落地案例少,通常用于原型驗證。
ASIC功能完全固定,無法適應(yīng)靈活多變的復(fù)雜計算場景。
FPGA和ASIC的異構(gòu)加速落地較少,可以不用過分關(guān)注。
更多異構(gòu)共存,還存在計算孤島的問題:
每個領(lǐng)域加速處理器只考慮本領(lǐng)域問題,難以考慮全局協(xié)同。就如瞎子摸象,每個領(lǐng)域加速器只看到自己的“繩子”、“柱子”、“扇子”等,這些東西最終能否組織出用戶所需要的“大象”?
各領(lǐng)域加速器之間的交互困難。如上圖所示,每個加速器都通過CPU進行通信,CPU已經(jīng)性能瓶頸,那么整個系統(tǒng)的性能上限也被鎖死。
多芯片異構(gòu)的中心節(jié)點問題。之前是CPU,性能不夠,現(xiàn)在有了DPU這樣的I/O加速器,但依然沒有改變中心節(jié)點的架構(gòu)問題。所有加速器交互通過中心節(jié)點,效率會降低,并且中心節(jié)點的處理能力就是整個系統(tǒng)的總處理能力,這約束了系統(tǒng)的處理性能。
單臺(服務(wù)器)設(shè)備的物理空間有限,無法容納多個物理的加速卡。需要整合。
2.4 小結(jié):計算架構(gòu)的發(fā)展階段
我們回顧一下從開始到現(xiàn)在,計算架構(gòu)所經(jīng)歷的四個階段:
階段一:單CPU的串行階段;
階段二:多CPU的同構(gòu)并行階段;
階段三:CPU+GPU的異構(gòu)并行階段;
階段四:CPU+DSA的異構(gòu)并行階段;
第五個階段,新一代的計算架構(gòu),應(yīng)該是什么樣子?我們將在后面的章節(jié)中揭曉。
3 從異構(gòu)走向超異構(gòu)
3.1交通工具——一個形象的例子
如果一個交通工具,需要達(dá)到200公里每小時,這是汽車的覆蓋范圍;如果需要500公里每小時,一些專用的汽車(如跑車)也是可以做到的;但要達(dá)到2000公里每小時,汽車平臺肯定是無法做到的,此刻我們需要更高級別的交通工具平臺——飛機。
更高的速度需求,就需要更高級別的交通工具;同樣的,更高的算力需求,就需要更加先進的芯片(架構(gòu))。
3.2 工藝和封裝創(chuàng)新,支撐更大規(guī)模的計算
工藝進步,單芯片容納的設(shè)計規(guī)模越來大;Chiplet封裝,使得在單芯片層次,可以構(gòu)建規(guī)模數(shù)量級提升的超大系統(tǒng)。
工藝持續(xù)進步、3D堆疊以及Chiplet多Die封裝,在芯片上可以容納更多的晶體管,也意味著芯片的規(guī)??梢栽絹碓酱?。
未來,量子工藝,可以代替現(xiàn)在的CMOS工藝。有了量子門級電路的強力支撐,上層的芯片和軟件生態(tài),可以更加蓬勃地發(fā)展。
參考:https://www.anandtech.com/show/17288/universal-chiplet-interconnect-express-ucie-announced-setting-standards-for-the-chiplet-ecosystem
3.3 需求牽引,工藝支撐,系統(tǒng)架構(gòu)必然需要創(chuàng)新
一方面,是業(yè)務(wù)需求的算力指數(shù)級增長,例如,目前AI算力需要每兩個月增加1倍;另一方面,工藝和封裝進步,使得單芯片設(shè)計規(guī)模從百億級晶體管,逐漸增加到千億級甚至萬億級,系統(tǒng)設(shè)計規(guī)模擴大接近100倍。
處于中間層次的系統(tǒng)架構(gòu)設(shè)計,目前卻沒有重大的變化:不管是傳統(tǒng)的CPU、GPU、FPGA還是相對較新一些的AI芯片、存算一體芯片以及DPU芯片等等,在本質(zhì)上都沒有改變現(xiàn)有以CPU為中心的計算架構(gòu)。
量變必然引起質(zhì)變,計算的架構(gòu)必然走向一個新的階段。
3.4 各類處理器都在拓展自己的能力邊界
處理器“內(nèi)卷”:每個處理器引擎都突破了通常意義上的各自邊界,侵入到其他處理器引擎的領(lǐng)地:
CPU集成協(xié)處理器。CPU不斷擴展硬件加速指令集,形成協(xié)處理器集成進CPU。例如Intel Xeon支持AVX和AMX。
GPU集成CUDA核,還集成DSA性質(zhì)的Tensor核。
FPGA集成CPU以及ASIC,形成SoC。例如AMD Xilinx Zynq。
ASIC不斷回調(diào),變成部分可編程的DSA,可以當(dāng)作是ASIC+DSA。
這樣,就在單個處理器內(nèi)部,已經(jīng)形成了某種程度上的異構(gòu)和融合。
3.5 從單異構(gòu)走向多異構(gòu)融合——超異構(gòu)
要想高性能,勢必降低靈活性,增加系統(tǒng)復(fù)雜度,使得系統(tǒng)難以駕馭。
并行計算難駕馭,異構(gòu)并行難上加難。但我們不得不“迎難而上”,在難上再加難:為了更高的性能,計算架構(gòu)需要進一步單異構(gòu)走向多異構(gòu)融合,形成超異構(gòu)。
超異構(gòu)難以駕馭,我們需要一些辦法,來降低超異構(gòu)系統(tǒng)的復(fù)雜度,使得超異構(gòu)計算真正落地。
3.6 (新)計算架構(gòu)的發(fā)展階段
在前面我們講了計算架構(gòu)的發(fā)展階段,也因此,未來計算架構(gòu)會走向第五個階段:超異構(gòu)并行。
超異構(gòu)并行計算,是新一代的(也可能是終極一代的)計算架構(gòu)。
4 相關(guān)趨勢案例
4.1 Intel在超異構(gòu)的布局
2019年,Intel提出超異構(gòu)計算相關(guān)概念:XPU是架構(gòu)組合,包括CPU、GPU、FPGA 和其他加速器。
并且推出了用于XPU編程的oneAPI。oneAPI是開源的跨平臺編程框架,底層是不同的XPU處理器,通過OneAPI提供一致性編程接口,使得應(yīng)用跨平臺復(fù)用。
Intel IPU和NVIDIA DPU類似,可以看作是基礎(chǔ)設(shè)施層DSA加速的集成平臺。
IPDK是開源的基礎(chǔ)設(shè)施編程框架,可運行在CPU、IPU、DPU或交換機。
2022年6月21日,Linux基金會宣布了開放可編程基礎(chǔ)設(shè)施(OPI)項目。OPI的目標(biāo):為基于 DPU/IPU 類技術(shù)的下一代架構(gòu)和框架培育一個社區(qū)驅(qū)動的基于標(biāo)準(zhǔn)的開放生態(tài)系統(tǒng)。
Intel在超異構(gòu)計算的布局分析如下表所示。
不謀全局者,不足謀一域;不謀萬世者,不足謀一時。
4.2 NVIDIA在超異構(gòu)的布局
NVIDIA自動駕駛Thor芯片,由數(shù)據(jù)中心架構(gòu)的CPU+GPU+DPU三部分組成,算力高達(dá)2000 TFLOPS的超異構(gòu)計算芯片。
上圖采用Atlan架構(gòu)圖,Atlan和Thor架構(gòu)相同,性能上有差異。
Thor是符合超異構(gòu)計算理念的全球第一款產(chǎn)品!
在數(shù)據(jù)中心,由于服務(wù)器計算規(guī)模較大,目前還沒有CPU+GPU+DPU的融合型產(chǎn)品,但趨勢已經(jīng)很明顯:NVIDIA Grace Hopper超級芯片是CPU+GPU,NVIDIA計劃從Bluefield DPU四代起,把DPU和GPU兩者集成成單芯片。
未來,Chiplet技術(shù)逐漸成熟,以及工藝的持續(xù)進步,CPU+GPU+DPU的超異構(gòu)融合單芯片必然會出現(xiàn)。
計算和網(wǎng)絡(luò)不斷融合:計算的很多挑戰(zhàn),需要網(wǎng)絡(luò)的協(xié)同;網(wǎng)絡(luò)設(shè)備也是計算機,加入計算集群,成為計算的一部分。
數(shù)據(jù)在網(wǎng)絡(luò)中流動,計算節(jié)點依靠數(shù)據(jù)流動來驅(qū)動計算,所有系統(tǒng)的本質(zhì)是數(shù)據(jù)處理,那么所有的設(shè)備就都是DPU。
以DPU為基礎(chǔ),不斷地融合CPU和GPU的功能,DPU會逐漸演化成數(shù)據(jù)中心統(tǒng)一的超異構(gòu)處理器。
5 超異構(gòu)處理器HPU
5.1 微觀性能和宏觀算力
回歸底層邏輯,我們該如何提升實際總算力?詳細(xì)分析一下。
首先,Scale Up的方式,即快速提升單芯片的功能。比如通過先進工藝和先進封裝,可以實現(xiàn)更大規(guī)模的設(shè)計。比如通過創(chuàng)新架構(gòu),從單位晶體管數(shù)量中挖掘更多性能的潛力。
其次,是Scale Out,即通過擴規(guī)模的方式提升性能。比如,我們國家戰(zhàn)略“東數(shù)西算”就是要通過建設(shè)非常多的數(shù)據(jù)中心和放置更多數(shù)量的服務(wù)器,以此來提升宏觀算力。但規(guī)模擴張的挑戰(zhàn)還是在芯片層次,即芯片如何更好地支持規(guī)?;瘮U張。芯片如何能夠覆蓋更多用戶的更多場景,以及在一個比較長的生命周期里能夠勝任“工作”,這就需要芯片有足夠的通用性、靈活性、適應(yīng)性、易用性等等的能力。此外,還需要考慮單芯片成本降低的問題,降低單芯片成本,才能夠更好地支持芯片的規(guī)?;瘮U張。
最后,是算力資源利用率。通過可擴展性,很好地跨芯片設(shè)備把資源集中起來;此外還需要盡可能標(biāo)準(zhǔn)化的架構(gòu),使得資源能夠匯集;再通過跨平臺能力的支持,實現(xiàn)宏觀所有資源的統(tǒng)一的資源池。給軟件提供最靈活的資源使用和管理方式,才能最大限度地實現(xiàn)計算資源的高利用率。
5.2 計算機體系結(jié)構(gòu)演進:從合到分,再從分到合
隨著CPU和GPU逐漸走向性能瓶頸,圖靈獎獲得者John H.和David P. 在2017年提出“計算機體系結(jié)構(gòu)的黃金年代”,給出的解決方案是特定領(lǐng)域架構(gòu)DSA。
但DSA架構(gòu)分散的趨勢會導(dǎo)致平臺和生態(tài)的碎片化,這不利于芯片的大規(guī)模部署和成本攤銷。
因此,我們認(rèn)為,未來正確的趨勢應(yīng)該是從分離再回到融合。
5.3 超異構(gòu)融合芯片的典型功能
從系統(tǒng)視角出發(fā),我們可以把系統(tǒng)中的眾多工作任務(wù)劃分為三類:
相對比較穩(wěn)定的任務(wù)可以劃歸到基礎(chǔ)設(shè)施層;
相對最不確定的任務(wù)放在應(yīng)用層。應(yīng)用層是用戶自己的運行任務(wù)。在硬件平臺設(shè)計或采購的時候,并不知道最終用戶會用來運行什么,并且應(yīng)用還會持續(xù)升級演進。因此,應(yīng)用是最不確定的。
彈性應(yīng)用加速層,靈活性處于兩者之間。
我們把支持這些功能的單芯片稱為SGP-HPU(Extremely Scalable General Purpose Hyper-heterogeneous Processing Unit,極致可擴展的通用超異構(gòu)處理器)。
5.4 HPU與傳統(tǒng)SOC的區(qū)別
HPU本質(zhì)上也是SOC,但和傳統(tǒng)的single-SOC相比,HPU是Multi-SOC融合而成的Macro-SOC。下表是HPU和傳統(tǒng)SOC的典型區(qū)別。
5.5 HPU應(yīng)用場景廣泛
5.5.1 用在邊緣等輕量服務(wù)器場景
HPU單芯片,可廣泛使用在邊緣計算服務(wù)器、存儲服務(wù)器、企業(yè)云服務(wù)器等輕量級服務(wù)器場景,輕量級服務(wù)器占整體服務(wù)器數(shù)量的80%以上。
5.5.2 HPU用在自動駕駛&智能網(wǎng)聯(lián)汽車場景
汽車的EE架構(gòu),目前在經(jīng)歷非常大的變革。從傳統(tǒng)300多甚至上千顆小ECU芯片組成的分布式架構(gòu),逐漸的過渡到了按相近功能域融合成SOC的域控制器DCU的半集中架構(gòu),再進一步發(fā)展到完全集中的超級計算大芯片架構(gòu)。
這個演進思路和HPU的發(fā)展趨勢是完全吻合的,集中式的超大算力自動駕駛汽車芯片的計算平臺本質(zhì)上就是HPU。
自動駕駛汽車更像手機,還是更像服務(wù)器?
從我們目前的分析看,自動駕駛汽車更像服務(wù)器一些:數(shù)據(jù)中心的技術(shù)在逐步“下沉”車端,如虛擬化、SOA、SDx等技術(shù);并且需要在單個硬件支持多個軟件系統(tǒng),并且做到系統(tǒng)間應(yīng)用、數(shù)據(jù)、性能、故障、安全等方面的隔離。
李克強院士提出智能網(wǎng)聯(lián)汽車中國方案:通過邊端深度協(xié)同,可以在單芯片能力較弱情況下,實現(xiàn)系統(tǒng)級能力更優(yōu)。
在目前無法拿到最先進工藝的情況下,智能網(wǎng)聯(lián)汽車系統(tǒng)解決方案是我們邁向智能+自動駕駛汽車時代的必由之路。
5.5.3 超異構(gòu)更加廣泛的應(yīng)用領(lǐng)域
云網(wǎng)邊端融合,計算架構(gòu)趨于統(tǒng)一。超異構(gòu)可廣泛地應(yīng)用在云計算、邊緣計算、超級終端,甚至網(wǎng)絡(luò)端。