周六早上剛起床,刷朋友圈,就被“高通擬收購Intel”的新聞刷屏了。
每個時代有每個時代的英雄:在CPU同構(gòu)計算時代,Intel是時代英雄;而隨著摩爾定律失效,大模型流行,行業(yè)快速進入異構(gòu)計算時代,這個時代的英雄是擁有GPU和CUDA的NVIDIA。
我們總結(jié)過去,不是簡單的為了肯定現(xiàn)在,更多的是為了展望未來。
那么,未來在哪里?
這篇文章,我們深入探討。
1 總結(jié)過去:Intel勢弱的原因
Intel是CPU的發(fā)明者,Intel x86架構(gòu)處理器,占據(jù)了PC和服務器處理器的絕大部分市場份額,我們的大部分軟件都構(gòu)建在Intel的x86架構(gòu)CPU之上,Intel是無可爭議的時代王者。
目前,Intel面臨困境,主要有兩個原因:IDM模式的拖累和CPU時代的落幕。
1.1 原因一,IDM模式的拖累
IDM(Integrated Device Manufacture)模式是芯片設(shè)計和芯片制造于一體的模式,大型處理器類的芯片公司,采取IDM模式的,目前有Intel和三星,其他IDM模式都是相對小規(guī)模的芯片,對工藝要求較低。
而NVIDIA、AMD、高通、博通、Marvell、MTK等一眾巨頭都是無晶圓設(shè)計(Fabless)模式,也包括其他混業(yè)的公司,如蘋果、谷歌、亞馬遜、微軟等自研芯片的公司,自己沒有生產(chǎn)工廠。提供芯片制造的則是臺積電TSMC、三星、中芯國際SMIC、格羅方德GlobalFoundries等代工廠(Foundry)。
在Finfet工藝之前,不管是微米工藝還是納米工藝,Intel自己的芯片銷售規(guī)模都能很好的覆蓋成熟工藝的成本攤銷和新工藝的研發(fā)投入。但量變引起了質(zhì)變,隨著Finfet工藝資金投入量巨大,臺積電靠著,除Intel之外的,幾乎所有芯片公司支持它的新工藝研發(fā)和試錯(成本攤銷),而Intel僅能靠自己一家公司來消化巨量的研發(fā)成本。于是,出現(xiàn)了AMD CPU比Intel CPU工藝領(lǐng)先兩代的局面。于是,在Intel幾乎獨占的,并且是Intel利潤主要來源的,服務器(CPU)處理器領(lǐng)域,被AMD和ARM陣營分去了2-3成的市場份額,同時還大幅度的壓縮了Intel的利潤空間。
設(shè)計和制造,本來是相互成就,如今卻成了相互拖累。制造工藝拖累了CPU處理器產(chǎn)品的競爭力,而反過來,處理器產(chǎn)品銷量低利潤低,沒有了巨量的資金投入,制造工藝也就無法趕超TSMC。
1.2 原因二,CPU時代的落幕
CPU之外,Intel也進行了很多探索,但這些探索都不算太成功:
探索一,早期打算進軍移動設(shè)備領(lǐng)域的ARM架構(gòu)CPU XScale,后來賣給了Marvell;
探索二,收購來的Altera FPGA,也是不溫不火,和公司的其他產(chǎn)品協(xié)同效應也不顯著,最近在計劃再獨立運營;
探索四,網(wǎng)絡(luò)版塊,也做了很多的努力(包括收購Barefoot),但依然不敵被NVIDIA收編的Mellanox。
在Intel的核心CPU領(lǐng)域,Intel其實沒做錯任何事情,他仍然是CPU的王者。問題出在CPU本身,CPU的時代過去了!
在異構(gòu)加速計算架構(gòu)下,CPU仍然很重要,CPU、GPU以及其他各種PU里,CPU是那個管理者(控制)的角色;問題在于,CPU現(xiàn)在承擔的計算任務相對較少,大家對CPU的性能需求不足。這樣導致兩個問題:
一方面,對新一代CPU產(chǎn)品不夠渴望(上一代,甚至上上代的產(chǎn)品性能能夠滿足要求);
另一方面,因為CPU性能需求不足,導致Intel CPU即使有性能優(yōu)勢,但卻沒有了價值優(yōu)勢,客戶可選擇其他家的CPU產(chǎn)品,雖然性能不如Intel CPU,但性能夠用,并且價格更便宜。
在這兩個問題的共同作用下,顯著壓縮了Intel的利潤空間。
2 肯定現(xiàn)在:新時代的王者NVIDIA
NVIDIA的GPU和CUDA發(fā)展有幾個關(guān)鍵的節(jié)點:
1993年,NVIDIA成立。公司開發(fā)的產(chǎn)品,是面向圖形加速計算的加速卡。
1999年,NVIDIA推出GeForce 256,這是第一款被命名為GPU的產(chǎn)品。
2003年,兩個研究小組獨立發(fā)現(xiàn)了基于GPU解決一些通用計算問題, GPU比CPU更快。GPGPU概念被首次提出:GPU不再以圖形加速為唯一目的,而能夠用于并行計算。
2006年,NVIDIA發(fā)布GeForce 8系列,這是真正意義上的可用于并行計算的GPGPU。
2007年,CUDA發(fā)布,CUDA為基于GPGPU的計算框架,方便開發(fā)者使用GPU進行編程,并充分發(fā)揮GPU的計算能力。
2010年,中國首臺千萬億巨型機“天河1A發(fā)布,同年,獲得超算TOP500第一名。天河超算,全球第一次把(NVIDIA)GPU異構(gòu)計算引入到超算領(lǐng)域,并實現(xiàn)了超大規(guī)模的異構(gòu)集群計算,開辟了一個新的超算時代。
2012年,AlexNet發(fā)布,深度學習流行。開啟了算力需求猛增的時代。2012-2018年,算力需求每3.4個月翻倍,遠高于摩爾定律的芯片性能增長速度。這一時期,單臺GPU服務器逐漸從單卡到多卡,AI所需算力,也逐漸從單機到集群。
2018年,AI進入大模型發(fā)展時代,算力需求繼續(xù)加速,每2個月翻倍。GPU集群規(guī)模進一步擴大,有了千卡、萬卡的GPU集群。
2022年底,ChatGPT獲得巨大的成功,千億參數(shù)模型成為主流,萬億、十萬億模型也都在路上。AI集群未來很可能繼續(xù)擴展到十萬卡、百萬卡的集群規(guī)模。
從上述時間線內(nèi)容,我們可以得到如下一些觀點:
觀點一,產(chǎn)品or平臺。傳統(tǒng)GPU,僅用于圖形圖像處理,本質(zhì)上是一個面向圖形領(lǐng)域的ASIC加速卡。而GPGPU,本質(zhì)上,是一個可編程的并行計算平臺。和NVIDIA同期的很多做GPU(加速卡)的公司,都煙消云散了;而NVIDIA做GPGPU(GPGPU+CUDA的平臺和生態(tài)),才獲得了成功。
觀點二,生態(tài)。Transformer之所以流行,是因為其能夠把NV GPU強大的并行計算能力充分發(fā)揮出來,Transformer具有NVIDIA GPU的親和性,從而才能脫穎而出。CUDA生態(tài)的強大能力,可見一斑。
觀點三,技術(shù)驅(qū)動需求 or 需求驅(qū)動技術(shù)。經(jīng)常有人說“需求驅(qū)動創(chuàng)新”,這句話放在應用層的創(chuàng)新是對的,但對處理器這種底層的“硬科技”創(chuàng)新,這句話是不太對的。技術(shù)的創(chuàng)新并不是需求驅(qū)動的,而是超前于需求的。國內(nèi)有句話叫“要想富,先修路”(路也是底層的基礎(chǔ)設(shè)施),只有先把路修了,才有可能富;幾乎不太可能等富了再修路,因為不修路,根本不可能富。
觀點四,技術(shù)前瞻。技術(shù)的發(fā)展,需要有一定的前瞻性,這樣才能搶占有利的技術(shù)、市場和生態(tài)地位。如果等需求明顯,再去做研發(fā),可能無法爭到多少收益;還可能因為別人已經(jīng)形成的生態(tài),自己的事情事倍功半。
總之,異構(gòu)計算時代的王者是NVIDIA。目前,NVIDIA市值兩萬億美金左右,超過了其他幾個芯片巨頭的市值總和。
3 展望未來:未來在哪里?
Intel的時代已經(jīng)落幕,NVIDIA的時代會落幕嗎?
答案是,肯定會。
每個時代有每個時代的英雄:異構(gòu)計算時代也會過去,會被新的時代所代替;新的時代,必然有新時代的英雄。
3.1 (超)大模型時代的算力挑戰(zhàn)和改進方向
GPU,是現(xiàn)在大模型的主流計算平臺;那么,GPU仍然會是未來超大模型的主流計算平臺嗎?
我們看如下兩個案例:
案例一,百萬卡集群。目前,主流的8卡GPU服務器價格在300萬左右(價格有波動,新型號發(fā)布,舊的型號價格會顯著下降),那么百萬卡集群,僅服務器的費用就高達3750億左右。
案例二,微軟與OpenAI的新一代AI基礎(chǔ)設(shè)施項目。微軟和OpenAI制定的新一代AI算力芯片和基礎(chǔ)設(shè)施項目星際之門,預計耗資1000億美元。
AI大模型,如此巨量的資金投入,如何收回成本?
對于其他中小型(甚至包括大型)公司來說,這樣的投入幾乎不可能。難道人工智能,就只能是巨頭的“游戲”?
有挑戰(zhàn),就必然有技術(shù)進步。解決這些問題的方法,我們拋磚引玉。改進方向主要有三個:
Scale Up的優(yōu)化。提升單芯片的性能,如果單芯片性能能夠提升10倍,百萬卡集群就可以縮減到10萬卡集群,并且其集群效率會更高。
Scale Out的優(yōu)化。進一步優(yōu)化節(jié)點間的網(wǎng)絡(luò)互聯(lián)性能和帶寬,進一步提升集群交互效率。
成本的優(yōu)化。技術(shù)上的成本優(yōu)化有很多方面,比如上面Scale Up和Scale Out的優(yōu)化,也比如工藝的進步。而更關(guān)鍵的成本優(yōu)化,其實在于生態(tài)。目前,因為生態(tài)的影響,我們對某些計算平臺存在依賴,算力客戶很多的成本是在為生態(tài)“溢價”付費,為性能(算力)和實際價值付費反而占比較少。這樣封閉生態(tài)的狀況,不利于產(chǎn)品的競爭和創(chuàng)新。只有在完全開放的生態(tài)下,業(yè)務不對特定的芯片產(chǎn)生依賴,芯片的價格也僅跟芯片的性能和價值相關(guān),客戶不需要為生態(tài)“溢價”付費。這才是健康合理的行業(yè)生態(tài)。
3.2 依據(jù)指令復雜度的處理器劃分
世間萬物由基本粒子組成,復雜處理由基本計算組成。軟件和硬件通過一定的“接口”解耦,而指令(集)則是軟件和硬件的“接口”。指令的復雜度(計算粒度或密度)決定了系統(tǒng)的軟硬件解耦程度。
ISA(指令集架構(gòu))之下,CPU、GPU等各種處理器是硬件;ISA之上,各種程序、數(shù)據(jù)集、文件等是軟件。
有的指令非常簡單,就是基本的加減乘除等標量計算;有的指令是向量、矩向或多維張量計算;還有的指令非常復雜,不是純粹的向量、矩陣或多維張量計算,而是各種維度計算再組合的一個混合的宏指令,夸張的甚至一個算子甚至算法,就對應到一條(單位計算)指令。
按照指令的復雜度,典型的處理器平臺大致分為CPU、協(xié)處理器、GPU、FPGA、DSA、ASIC。從左往右,單位計算越來越復雜,性能越來越好,而靈活性越來越低。
CPU、GPU、DSA等各種類型的處理器,本質(zhì)上是在不同層次的軟硬件解耦基礎(chǔ)上的軟硬件協(xié)同。
我們對各類處理器的情況進行分析:
主流的計算處理器主要是CPU、GPU和DSA,其他類型處理器使用的范圍較小。
CPU。CPU具有極致的靈活可編程能力,幾乎可以通過編程的方式,實現(xiàn)任何功能。CPU,是最廣泛使用的處理器。
Co-Processor。這里指的是CPU擴展的協(xié)處理器。工程形態(tài)上跟CPU是一個整體,可以認為屬于CPU。
GPU。通用的并行加速處理器。是目前大模型時代,異構(gòu)加速的主流處理器。
NP。相對于GPU,網(wǎng)絡(luò)處理器因為其使用范圍較窄,并且沒有像CUDA這樣的易于編程的開發(fā)框架,并且也沒有非常強的業(yè)務需求驅(qū)動,因此目前大規(guī)模使用的NP產(chǎn)品非常少見。
FPGA。在系統(tǒng)規(guī)模較小的時候,F(xiàn)PGA開發(fā)門檻相對低一些,在一些用量較少,但有一定性能要求的場景,F(xiàn)PGA是非常合適的。其在CPU和ASIC之間,找到了自己的定位:比CPU性能要好,比ASIC芯片一次性成本要低。不過,量變引起了質(zhì)變,隨著系統(tǒng)規(guī)模越來越大,F(xiàn)PGA的開發(fā)也越來越困難,基于FPGA開發(fā)的軟硬件耦合性越來越高,相互掣肘,從而大幅度約束了FPGA的業(yè)務范圍。隨著系統(tǒng)規(guī)模的進一步擴大,F(xiàn)PGA的未來前景一般。
ASIC。專用集成電路,通常是將業(yè)務邏輯和算法/算子完全固化的一種芯片。功能確定,無法編程,僅能進行簡單的配置和控制。也跟FPGA類似,隨著系統(tǒng)規(guī)模的增大,量變引起了質(zhì)變,未來幾乎不會存在完全ASIC形態(tài)的芯片。
DSA。DSA是ASIC向通用可編程能力的一個回調(diào),谷歌TPU是全球第一款DSA,目前主流的AI加速芯片幾乎都可以歸屬到DSA范疇。NVIDIA Tensor core也可以理解為一種DSA,但因為其工程實現(xiàn)上是納入到GPU內(nèi)部(CUDA core+Tensor Core),所以把其歸屬到GPU范疇。
GP-DSA。對目前的大模型來說,GPU太貴,DSA不夠靈活。那我們是否可以在這兩者之間找到一個平衡點?也就是更加通用的DSA。需要注意的是,雖然從指令復雜度角度,它和FPGA放在一個位置,但兩者有本質(zhì)的差別。
量子芯片和類腦芯片,以及其他類似的創(chuàng)新架構(gòu)。通常都擁有相比ASIC更大的指令復雜度,可以歸屬為超級ASIC的范疇。這類芯片,在處理特定算法或數(shù)學難題時有一定的優(yōu)勢;但即使解決了相關(guān)的技術(shù)問題,這類芯片大規(guī)模商業(yè)落地仍有非常長的路要走。
存算一體。存算一體,是一種具體的芯片實現(xiàn)技術(shù),和依據(jù)指令復雜度劃分的各類處理器是不同層次的技術(shù)概念,兩者之間沒有必然的對應關(guān)系。存算一體芯片也可以是CPU、GPU或者DSA等類型的處理器。但從目前的主流實現(xiàn)上來說,存算一體芯片通常都是面向特定領(lǐng)域(主要是AI)的DSA架構(gòu)。
3.3 依據(jù)靈活性特征的系統(tǒng)分層
復雜的系統(tǒng),都是分層分塊的。我們可以把系統(tǒng)中的這些塊,也即工作任務,按照其靈活性特征進行分類。靈活性意味著變化,可以從兩個方面理解(橫向和縱向的差異):
橫向。同一個工作任務,不同的客戶,其業(yè)務邏輯會有差異性嗎?
縱向。這個工作任務,未來會經(jīng)常迭代更新業(yè)務邏輯嗎?還是已經(jīng)非常成熟,幾乎不會變更?
依據(jù)任務的靈活性特征,我們可以把系統(tǒng)分為三層(類):
基礎(chǔ)設(shè)施層。任務非常確定,適合DSA甚至ASIC級別的處理器進行加速處理。
業(yè)務加速層。業(yè)務變化適中,適合GPU平臺進行加速處理。
業(yè)務應用層。一些控制類任務,以及場景規(guī)模較少,也包括性能不敏感的計算任務,都可以放在業(yè)務應用層,由CPU進行處理。CPU同時承擔兜底的角色,DSA和GPU都無法處理的任務,都由CPU處理。
3.4 從同構(gòu)到異構(gòu),再到異構(gòu)融合
在同構(gòu)計算、異構(gòu)計算的基礎(chǔ)上,我們可以定義一個新的階段,異構(gòu)融合計算階段:
第一階段,CPU同構(gòu)計算。所有的計算任務都在CPU里運行。
第二階段,CPU+GPU異構(gòu)計算。受“二八定律”影響,通常情況下,有80%左右的計算任務適合于加速計算,而另外20%的計算任務仍只能進行通用(非加速)計算。
第三階段,CPU x GPU x DSAs異構(gòu)融合計算。系統(tǒng)越來越龐大,“二八定律”分層更加明顯,80%左右的計算任務由更加高效(相比GPU)的專用加速DSA處理器完成。DSA處理器有很多個,專門處理不同領(lǐng)域的任務加速。而20%*80%也就是16%的計算任務由GPU加速完成。最后,CPU兜底,完成剩余4%的計算任務。
異構(gòu)計算階段,重心在于GPU。但異構(gòu)融合階段,重心則在“融合”。因此,在異構(gòu)融合階段,采用了“乘號”,而不是“加號”。
(關(guān)注軟硬件融合公眾號,后臺回復“白皮書”,下載工信部電子5所發(fā)布的《異構(gòu)融合計算技術(shù)白皮書》。)
3.5 新一代通用計算的王者,在哪里?
1971年,Intel發(fā)明了CPU。第一代通用計算的巨大成功,成就了Intel的王者地位。
1999年,NVIDIA發(fā)明了GPU。隨著深度學習和大模型的流行,異構(gòu)計算成為主流?;贕PU的第二代通用計算,成就了NVIDIA的成功。
從1971年到1999年,時間為28年。從1999年,經(jīng)過28年,則到2027年。
那么,2027年,是否會出現(xiàn)第三代通用計算處理器?
第三代通用計算,剛剛開始萌芽。希望國內(nèi)有廠家能夠脫穎而出,抓住“換道超車”的重大歷史機遇,成就偉大事業(yè)。
(正文完)