技術(shù)
導(dǎo)讀:現(xiàn)在,隨著 AMD 獲得監(jiān)管機(jī)構(gòu)的批準(zhǔn)并花光了所有“錢(qián)”——稀釋后的市值與實(shí)際現(xiàn)金不同,但你可以用它買東西——很自然,收購(gòu)?fù)瓿珊螅?CPU 和GPU 設(shè)計(jì)人員不僅可以使用作為 Xilinx 器件核心的 FPGA 可編程邏輯,還可以使用在所有 FPGA 混合中變得普遍的晶體管硬塊。
近日,AMD 已經(jīng)完成了對(duì) Xilinx 的收購(gòu),由于過(guò)去一年半時(shí)間里 AMD 的股價(jià)上漲,最終成本接近 490 億美元,而不是最初在 2020 年 10 月宣布該交易時(shí)預(yù)計(jì)的 350 億美元。
現(xiàn)在,隨著 AMD 獲得監(jiān)管機(jī)構(gòu)的批準(zhǔn)并花光了所有“錢(qián)”——稀釋后的市值與實(shí)際現(xiàn)金不同,但你可以用它買東西——很自然,收購(gòu)?fù)瓿珊螅?CPU 和GPU 設(shè)計(jì)人員不僅可以使用作為 Xilinx 器件核心的 FPGA 可編程邏輯,還可以使用在所有 FPGA 混合中變得普遍的晶體管硬塊,例如 DSP 引擎、AI 加速器、內(nèi)存控制器、I /O 控制器和其他類型的互連 SerDes。
AMD 需要很長(zhǎng)時(shí)間才能建立一支工程師團(tuán)隊(duì),這些工程師團(tuán)隊(duì)擁有賽靈思在可編程邏輯方面以及在其航空航天、國(guó)防、電信/通信、工業(yè)和廣播/媒體業(yè)務(wù)領(lǐng)域所獲得的專業(yè)知識(shí),并且結(jié)合了憑借 Vitis 軟件堆棧,Xilinx 的價(jià)值超過(guò)了收購(gòu)一家在其他領(lǐng)域擁有收入和利潤(rùn)流且與 AMD 核心業(yè)務(wù)幾乎沒(méi)有重疊的公司的價(jià)值,這立即轉(zhuǎn)化為 AMD 首席執(zhí)行官Lisa Su所看中的, 更為廣泛的,估值為 1350 億美元的潛在市場(chǎng)。
不斷增加的 TAM 對(duì)于 AMD(實(shí)際上是任何半導(dǎo)體公司)實(shí)現(xiàn)增長(zhǎng)至關(guān)重要,并將Xilinx 的收入和利潤(rùn)流(在過(guò)去 12 個(gè)月中分別為 36.8 億美元和 9.29 億美元)添加到AMD 的收入和利潤(rùn)流中,2021 年分別為 163.4 億美元和 31.6 億美元。
但真正的價(jià)值,以及為什么 Lisa Su 和公司花了這么多錢(qián)來(lái)收購(gòu) Xilinx。皆因它需要做很多事情來(lái)最大限度地提高投資并推動(dòng)其收入遠(yuǎn)高于僅僅通過(guò)合而取得的收入。
AMD 以及數(shù)據(jù)中心的任何主要芯片公司都不清楚他們從第三方獲得了多少 IP 塊的許可。在我看來(lái),這可能比我們?cè)S多人意識(shí)到的成本更高,并且假設(shè)賽靈思實(shí)際上創(chuàng)建了自己的內(nèi)存控制器、I/O 控制器、網(wǎng)絡(luò)控制器和更通用的 SerDes 以及片上互連,那么 AMD 可能隨著時(shí)間的推移轉(zhuǎn)移到賽靈思 IP 塊,能夠節(jié)省一些錢(qián)。如果賽靈思 IP 塊比 AMD 替代品更好或完全從 AMD 堆棧中消失,那么這里有各種可能性來(lái)改進(jìn) AMD 在 CPU 和 GPU 插槽中的內(nèi)容以及它如何從中創(chuàng)建自己的新 IP。
例如,想象一下,基于 Xilinx SerDes 的數(shù)據(jù)中心規(guī)模 Infinity Fabric 交換結(jié)構(gòu)以及由 AMD 和 Xilinx 融合團(tuán)隊(duì)共同創(chuàng)建的數(shù)據(jù)包處理引擎?想象一下類似于IBM 為其 Power10 處理器創(chuàng)建的內(nèi)存區(qū)域網(wǎng)絡(luò),但跨機(jī)架和機(jī)架以及 Epyc CPU 和 Instinct CPU 加速器的行和行運(yùn)行。. . . 想象一下,根本不關(guān)心以太網(wǎng)或 InfiniBand,除了作為集群的入口點(diǎn)。. . . 這會(huì)有多酷?
看看 Versal 系列的“Everest”一代中的 Xilinx FPGA 混合器件:
那些用于機(jī)器學(xué)習(xí)推理處理的 AI 矩陣引擎和用于各種信號(hào)處理的 DSP 引擎是過(guò)去在可編程邏輯中實(shí)現(xiàn)的硬塊——賽靈思在其 Versal 系列中一直將其稱為自適應(yīng)引擎——但由于空間、熱量和性能問(wèn)題,將這些塊實(shí)現(xiàn)為 ASIC 并使用芯片上的高速互連將所有這些塊相互連接并連接到可編程邏輯要高效得多。
AMD 的工程師在考慮如何構(gòu)建計(jì)算引擎、系統(tǒng)和集群時(shí),可以使用這些硬塊中的每一個(gè),包括 Arm 內(nèi)核。AMD 設(shè)計(jì)的每個(gè)計(jì)算設(shè)備,無(wú)論是單片芯片還是封裝中的小芯片集合,都可以在 AMD 認(rèn)為合適的時(shí)候添加一些可編程邏輯。
那么除了在很大程度上保持業(yè)務(wù)不變之外,AMD 將如何與 Xilinx 合作呢?它還沒(méi)有說(shuō),除了說(shuō) AMD 在交易失敗之前已經(jīng)授權(quán)了一些 Xilinx IP,并且無(wú)論該 IP 是什么——不要假設(shè)它是可編程邏輯——都將在明年年底的某個(gè)時(shí)候出現(xiàn)在 AMD 芯片中。
讓我們看看他們合并后的一些潛在可能性,如果您有自己的想法,請(qǐng)?zhí)岢鰜?lái)。
首先,我們認(rèn)為整個(gè) CPU 和整個(gè) FPGA 的單芯片混合實(shí)現(xiàn)是不太可能的,但有可能會(huì)發(fā)生共同封裝的 CPU-FPGA 混合。
這是英特爾早在 2014 年就與 FPGA 制造商 Altera 合作的東西,這甚至發(fā)生在它收購(gòu)該公司之前——在 2018 年,宣布將“Skylake”至強(qiáng) SP 處理器與 Arria 10 FPGA 混合在一個(gè)封裝中的產(chǎn)品。我們認(rèn)為這些產(chǎn)品不會(huì)在數(shù)據(jù)中心起飛,原因與為什么我們?cè)跀?shù)據(jù)中心的單個(gè)封裝中看不到 CPU-GPU 混合體的原因相同,除非是非常特殊的情況,例如帶有集成顯卡的 PC 芯片被重新用作媒體處理服務(wù)器引擎,就像 AMD 和英特爾過(guò)去在其嵌入式產(chǎn)品線中所做的那樣。
在其 frankensocket CPU-GPU 復(fù)合體中,英特爾將 125 瓦的成熟 20 核 Xeon SP-6138P 與額定 70 瓦的成熟Arria 10 GX FPGA 1150放在同一封裝中。它們通過(guò) UltraPath 互連 (UPI) 鏈接進(jìn)行連接,這些鏈接用于與 CPU 進(jìn)行共享內(nèi)存 NUMA 配置,這意味著英特爾將 UPI 控制器移植到 Arria 10 上。(這個(gè) UPI 控制器似乎不太可能在可編程控制器中實(shí)現(xiàn)邏輯,但 UPI 協(xié)議可能是在硬編碼 SerDes 之上實(shí)現(xiàn)的,該 SerDes 適合 UPI 的時(shí)序,可編程邏輯填補(bǔ)了空白。)Arria 10 GX 沒(méi)有在 FPGA 復(fù)合體上激活 Arm 內(nèi)核(他們可能一直在那里,英特爾從未明確表示過(guò))。
這個(gè) frankensocket 的 FPGA 部分的目標(biāo)應(yīng)用程序是在可編程邏輯上運(yùn)行 Open vSwitch 虛擬切換,使其運(yùn)行速度提高 3 倍以上,并允許 Xeon CPU 托管 2 倍的虛擬機(jī),因?yàn)?Open vSwitch沒(méi)有在至強(qiáng)核心的軟件上運(yùn)行。我們估計(jì)組合設(shè)備的成本為 6,500 美元,當(dāng)時(shí) Xeon 部分的成本約為 2,600 美元。據(jù)我們所知,這個(gè)想法并沒(méi)有席卷市場(chǎng),后續(xù)也轉(zhuǎn)向卸載虛擬存儲(chǔ)、虛擬網(wǎng)絡(luò)和交換以及加密/解密到 DPU(一種美化的 SmartNIC,取決于你想要什么定義使用)。
AMD 十多年來(lái)一直在考慮這種混合 CPU-GPU 計(jì)算方法及其異構(gòu)系統(tǒng)架構(gòu),甚至在一些服務(wù)器部件中實(shí)現(xiàn)了它們,并且顯然已經(jīng)為 PC 和大批量定制游戲機(jī)芯片做到了這一點(diǎn)。在一定程度上,Infinity Fabric 互連是 HSA 的一種實(shí)現(xiàn)。
AMD 可以將整個(gè) CPU 和整個(gè) FPGA 集成在一起——由用于 CPU 計(jì)算的 frankensocket、用于 FPGA 可編程邏輯的小芯片以及它們兩者的共享內(nèi)存和 I/O 集線器組成——這很有趣,因?yàn)樗梢蕴峁┻B貫的共享插槽內(nèi)跨 CPU 和 FPGA 容量的內(nèi)存。使用 Infinity Fabric 鏈接,它也可以跨socket完成。正如我們所建議的,使用 Infinity Fabric 交換,它可以跨機(jī)架甚至跨行完成。這是一個(gè)強(qiáng)大的想法。
其中任何一個(gè)問(wèn)題都是鎖定任何socket中的配置。CPU 與 FPGA 可編程邏輯的比例會(huì)因應(yīng)用、行業(yè)和客戶用例而異。而且,如果您將 GPU 加入其中,您就會(huì)有許多不同的變量可供選擇,實(shí)際上,每個(gè)芯片都會(huì)及時(shí)成為特定客戶的定制部件。你可以為超大規(guī)模和云建設(shè)者這樣做,因?yàn)閿?shù)量值得,但如果 AMD 想把它賣給其他服務(wù)提供商和大型企業(yè),它必須選擇一些 SKU,而且它所做的任何事情都可能不是最理想的。
Nvidia 并沒(méi)有用到任何 FPGA ,除了可能用于模擬自己的芯片(如果它在其“Selene”超級(jí)計(jì)算機(jī)上進(jìn)行所有模擬和驗(yàn)證,可能甚至沒(méi)有),該公司的聯(lián)合創(chuàng)始人兼首席執(zhí)行官 Jensen Huang對(duì)此并不偽言。但英特爾收購(gòu)了 Altera 而現(xiàn)在 AMD 又收購(gòu)了 Xilinx 的事實(shí)至少表明,F(xiàn)PGA 在現(xiàn)成 CPU 上運(yùn)行的編程語(yǔ)言和用于實(shí)現(xiàn)某些功能或軟件堆棧的定制 ASIC 之間的邊界仍然具有吸引力。
我們一直認(rèn)為,一個(gè)平衡的系統(tǒng)將包括所有三個(gè)計(jì)算引擎,例如現(xiàn)代交換機(jī)。您需要用于快速串行處理和大內(nèi)存占用的 CPU,用于快速并行處理和高內(nèi)存帶寬的 GPU,以及用于加速硬編碼算法的 FPGA,這些算法在 X86 或 Arm 處理器上的軟件實(shí)現(xiàn)中可用,但在由于這些算法變化太大,或者因?yàn)槟鸁o(wú)法支付熱量或成本溢價(jià),因此無(wú)法保證定制 ASIC 的數(shù)量。
我們認(rèn)為將 FPGA 可編程邏輯嵌入到每個(gè) CPU 插槽甚至每個(gè) GPU 插槽中作為這些設(shè)備的一種暫存器,這樣它們就可以擁有散列算法、加密算法、安全協(xié)議或虛擬開(kāi)關(guān)的元素,這在 FPGA 中絕對(duì)是一件有趣的事情(或部分完成),而不是在 CPU 或 GPU 芯片上的邏輯塊中,在添加到 CPU 或 GPU 插槽的單獨(dú)小芯片中,或在 CPU 上運(yùn)行的更高級(jí)別的軟件中。
多年來(lái),IBM 已經(jīng)在其 System z 和 Power 處理器中添加了此類暫存器(請(qǐng)注意,不是用 FPGA 邏輯實(shí)現(xiàn)的),允許它們實(shí)現(xiàn)新指令或創(chuàng)建復(fù)合指令,這些指令在芯片流片了。這不會(huì)是芯片/插座空間的很大一部分。
我們絕對(duì)認(rèn)為很快就會(huì)有 Versal FPGA 混合使用 Xen X86 內(nèi)核交付,我們認(rèn)為 Vitis 堆棧將進(jìn)行調(diào)整,以便能夠?qū)⒋a編譯到這些內(nèi)核以及 Versal 計(jì)算的其他元素復(fù)雜的。我們認(rèn)為 AMD 不太可能將 X86 或 Arm 內(nèi)核引入其 GPU,但我們確實(shí)認(rèn)為該公司可以創(chuàng)建一系列混合了 FPGA 和 X86 內(nèi)核的 SmartNIC 和 DPU——如果它的話,甚至可能是嬰兒 GPU具有架構(gòu)意義。AMD 是 SmartNIC 的新手,但 Xilinx 不是,尤其是在 2019 年 4 月收購(gòu) Solarflare 之后。
這讓我們?cè)谶@個(gè)探索中有了更多的想法,這是我們自混合旅程開(kāi)始以來(lái)一直鼓勵(lì)計(jì)算引擎制造商做的事情。似乎很清楚的是,我們將在插槽內(nèi)或跨插槽擁有小芯片組件,并在它們之間進(jìn)行某種互連。對(duì)于 AMD 和 Xilinx,它將是 Infinity Fabric,并且可能在其之上支持 CCIX 或 CXL 協(xié)議,如果 Infinity Fabric 確實(shí)是 PCI-Express 的超集,其中融入了 AMD HyperTransport 功能,這應(yīng)該是可能的。想要將許多東西打包到混合計(jì)算引擎中并制作一個(gè)大socket有很好的延遲原因。但也許在后摩爾定律時(shí)代,要有最好的答案。
所以,我們希望看到 AMD 這樣做。創(chuàng)建一個(gè)高性能的 Zen4 內(nèi)核,去掉所有矢量引擎,并在芯片上放置更多內(nèi)核或在芯片上放置更多更快的內(nèi)核。我們選擇后者是因?yàn)樵谶@個(gè) CPU 上,我們想要驚人的串行性能。我們想要這個(gè)東西上的 HBM3 內(nèi)存,我們想要至少 256 GB 的容量,這應(yīng)該是可能的。大量的 Infinity Fabric 鏈接從單個(gè)插槽中脫落。最高500瓦,我們不在乎?,F(xiàn)在,在系統(tǒng)板左側(cè)的旁邊,我們想要一個(gè)殺手級(jí)“Aldebaran” Instinct GPU,而 MI200 的一半可能就足夠了——Instinct MI200 在一個(gè)封裝中具有兩個(gè)邏輯 GPU– 或者可能需要配備四臺(tái)畢宿五發(fā)動(dòng)機(jī)的完整 MI300。這將取決于客戶。在 GPU 周圍也放置大量 HBM3 內(nèi)存。在 CPU 的右側(cè),我們想要一個(gè) Versal FPGA 混合,其中包含更多的 Infinity Fabric 鏈接,去掉了 Arm 內(nèi)核,保留了 DSP 引擎和 AI 引擎,以及所有硬塊互連的東西。這是一個(gè)集成的可編程邏輯引擎,在需要時(shí)可以像 DPU 一樣工作。Infinity Fabric 通道可以從這里斷開(kāi)以創(chuàng)建集群,或者直接斷開(kāi) GPU 和 CPU,但我們喜歡在 DPU 上實(shí)現(xiàn) Infinity Fabric 交換機(jī)的想法。
現(xiàn)在,利用這些計(jì)算引擎模塊,允許客戶在系統(tǒng)板上、機(jī)架內(nèi)和跨行配置他們需要的比率。也許有一個(gè)客戶需要為每個(gè) CPU 配備四個(gè) GPU,為每個(gè)具有單個(gè) Infinity Fabric 交換機(jī)的復(fù)雜系統(tǒng)配備兩個(gè) DPU。在另一種情況下,可能由于延遲原因,GPU 更靠近 DPU(想想現(xiàn)代超級(jí)計(jì)算機(jī)),而 CPU 掛在 GPU 的一側(cè)?;蛘?CPU 和 GPU 都從 DPU 集線器發(fā)出?;蛘?CPU 處于環(huán)形拓?fù)浣Y(jié)構(gòu)中,而 GPU 處于機(jī)架內(nèi)的胖樹(shù)中。將其全部設(shè)為 Infinity Fabric,并使拓?fù)湓?Infinity Fabric 交換機(jī)上可更改。(不同的工作負(fù)載需要不同的拓?fù)浣Y(jié)構(gòu)。)每個(gè)組件都經(jīng)過(guò)高度調(diào)整、精簡(jiǎn),完全沒(méi)有冗余,硬件與軟件絕對(duì)協(xié)同設(shè)計(jì)。
在AMD未來(lái)的系統(tǒng)中,除了集群中的頭節(jié)點(diǎn)以外,沒(méi)有 InfiniBand 或以太網(wǎng),它們只是 Epyc CPU-only 服務(wù)器。
如果我們是 AMD,我們會(huì)這樣做。