作者:鵬程
數(shù)據(jù)處理的增加、虛擬化的廣泛使用以及內(nèi)存中計算的增加,使得服務(wù)器對CPU附加內(nèi)存的需求呈指數(shù)級增長。人工智能、機器學(xué)習(xí)、大數(shù)據(jù)和分析等現(xiàn)代工作負載加劇了數(shù)據(jù)中心管理人員面臨的內(nèi)存挑戰(zhàn)。訓(xùn)練大型語言模型(LLM),如GPT-4、Llama 2和PaLM 2需要大的內(nèi)存容量和計算能力。
隨著處理器核數(shù)的不斷增加,實現(xiàn)更快、更復(fù)雜的計算,就需要更多的內(nèi)存。CXL內(nèi)存可以提供所需的擴展內(nèi)存容量。隨著下半年首批支持 CXL 2.0 的服務(wù)器 CPU 問世,CXL 有望正式進入商業(yè)化階段。
?01、什么是CXL?
所謂CXL,也就是Compute Express Link。作為一種開放標(biāo)準(zhǔn)的高速互聯(lián)協(xié)議,CXL的推出主要是要解決計算器件和內(nèi)存之間的互聯(lián)問題,主要是為了改善處理器與加速器、內(nèi)存擴展設(shè)備等之間的通信。
從技術(shù)上看,CXL是通過現(xiàn)有的PCIe(Peripheral Component Interconnect Express)物理層傳輸信號,但在協(xié)議層面上引入了新的特性和改進,以顯著提升系統(tǒng)中處理器、加速器和內(nèi)存設(shè)備之間的數(shù)據(jù)交換效率和一致性,使得資源共享具有更低的延遲,減少了軟件堆棧的復(fù)雜性,并降低了整體系統(tǒng)成本,為高性能計算和大規(guī)模數(shù)據(jù)處理提供了更為強大的支持。
CXL技術(shù)的背景可以追溯到PCIe (Peripheral Component Interconnect Express) 技術(shù),PCIe是用于連接計算機內(nèi)部組件的一種標(biāo)準(zhǔn)接口技術(shù)。PCIe設(shè)備可以發(fā)起一個DMA來訪問內(nèi)存,只要知道目標(biāo)物理地址即可。
CXL支持三種協(xié)議,分別是CXL.io、CXL.cache和CXL.memory。其中CXL.io主要用于傳統(tǒng)的I/O操作,與PCIe類似;CXL.cache和CXL.memory則提供了緩存一致性和內(nèi)存訪問能力,使得CPU與加速器或內(nèi)存擴展設(shè)備之間能夠共享和一致性地訪問內(nèi)存。這對于加速器(如GPU、FPGA)而言尤為重要,因為它們可以更有效地訪問系統(tǒng)內(nèi)存,而不必通過緩慢的I/O通道。
在CXL之前就有以IBM牽頭的OpenCAPI,ARM為代表支持的CCIX,AMD等支持的GenZ和Nvidia自行提出的Nvlink等等多種協(xié)議。雖然PCIe已經(jīng)有了很多改進,但其難以滿足現(xiàn)代計算機處理器和加速器之間的高帶寬、低延遲通信需求。于是,CXL技術(shù)應(yīng)運而生。
2019年3月,CXL的技術(shù)聯(lián)盟成立,全球頭部的CPU廠家與服務(wù)器廠家都參與其中。聯(lián)盟成立之初便推出了CXL1.0協(xié)議標(biāo)準(zhǔn),英特爾的Sapphire Rapids處理器和AMD EPYC Genoa處理器均支持該技術(shù)。半年時間后發(fā)布了CXL1.1協(xié)議標(biāo)準(zhǔn),后續(xù)首批落地的產(chǎn)品都是基于CXL1.1的標(biāo)準(zhǔn)。
2020年10月,聯(lián)盟發(fā)布了CXL2.0協(xié)議標(biāo)準(zhǔn)。CXL 2.0規(guī)范主要增加了內(nèi)存池的支持,以最大限度地提高內(nèi)存利用率,并且提供了對持久性內(nèi)存的標(biāo)準(zhǔn)化管理,允許與DDR同時運行,從而可以釋放DDR用于其他用途。并且CXL 2.0規(guī)范也向后兼容CXL 1.1和CXL 1.0。在內(nèi)存池方面,CXL 2.0支持切換以啟用內(nèi)存池。使用CXL 2.0交換機,主機可以訪問池中的一個或多個設(shè)備。盡管主機必須支持CXL 2.0才能利用此功能,但內(nèi)存設(shè)備可以是支持CXL 1.0、1.1和2.0的硬件的組合。在1.0/1.1中,設(shè)備被限制為一次只能由一臺主機訪問的單個邏輯設(shè)備。然而,一個2.0級別的設(shè)備可以被劃分為多個邏輯設(shè)備,允許多達16臺主機同時訪問內(nèi)存的不同部分。通過轉(zhuǎn)向CXL 2.0直連架構(gòu),數(shù)據(jù)中心還可以獲得主內(nèi)存擴展的性能優(yōu)勢,以及池內(nèi)存的效率和總體擁有成本(TCO)優(yōu)勢。
2022年8月,聯(lián)盟發(fā)布了CXL3.0協(xié)議標(biāo)準(zhǔn),增加了fabric的概念,支持多個Switch之間更高維度的互聯(lián),可以應(yīng)用到更高的體系架構(gòu)中,實現(xiàn)進一步內(nèi)存和帶寬的擴展。
CXL技術(shù)被視為下一個高頻寬內(nèi)存技術(shù),它通過建立高帶寬連接,使CPU、GPU和其他加速器之間能夠高速通信,從而實現(xiàn)更快速、更靈活的數(shù)據(jù)處理。CXL技術(shù)的發(fā)展預(yù)計將進一步提升服務(wù)器效率,在AI時代DRAM的受益程度不亞于GPU。隨著數(shù)據(jù)量與計算需求的急劇增加,傳統(tǒng)內(nèi)存架構(gòu)已難以滿足現(xiàn)代應(yīng)用的需求,CXL的引入為實現(xiàn)更高的存儲帶寬與更低的延遲提供了可能。
到目前為止,CXL技術(shù)聯(lián)盟擁有超過200多家成員,CPU廠家、服務(wù)器廠家、存儲器廠家陸續(xù)加入,整個生態(tài)在飛速發(fā)展階段,各種各樣的產(chǎn)品已經(jīng)落地應(yīng)用。
?02、2024年巨頭加速布局CXL 2.0
在此情況下,為了在AI浪潮中,拔得頭籌。巨頭也開始爭相布局CXL 2.0技術(shù)。
2023年初,英特爾發(fā)布了支持CXL1.1協(xié)議的SPR CPU,接著又發(fā)布了另外一款基于CXL1.1協(xié)議的EMR CPU。今年三季度,英特爾發(fā)布了兩款支持CXL2.0協(xié)議的CPU, Granite Rapids和Sierra Forest(已更名為“至強6”),CXL通道數(shù)從SPR和EMR的32個增加到64個。至強6是英特爾第一代支持CXL 2.0規(guī)范的處理器,可商用部署。在至強6平臺上,CXL 2.0的一種用法是CXL內(nèi)存和DDR內(nèi)存交織,從而擴大容量,實現(xiàn)并發(fā)訪問,提高總峰值帶寬。
AMD也是2023年發(fā)布了支持CXL1.1協(xié)議的Genoa CPU,今年二季度發(fā)布了支持CXL2.0協(xié)議的第五代EPYC處理器,其家族代號為“Turin”。
與此同時,存儲巨頭也在加速布局CXL。今年九月,SK海力士宣布,公司已將用于優(yōu)化CXL(Compute Express Link)存儲器運行的自研軟件異構(gòu)存儲器軟件開發(fā)套件(HMSDK)的主要功能成功搭載于全球最大的開源操作系統(tǒng)Linux上。這一進展標(biāo)志著SK海力士在軟件競爭力方面也獲得了廣泛認可,有助于推動CXL技術(shù)在數(shù)據(jù)中心和服務(wù)器系統(tǒng)中的應(yīng)用。SK海力士HMSDK在不修改現(xiàn)有應(yīng)用程序的情況下,將內(nèi)存封裝的帶寬提高了30%以上。它通過基于現(xiàn)有內(nèi)存和擴展的CXL內(nèi)存之間的帶寬有選擇地分配內(nèi)存來實現(xiàn)這一點。此外,該軟件通過基于訪問頻率的優(yōu)化,將頻繁訪問的數(shù)據(jù)重新定位到更快的內(nèi)存中,從而使性能比傳統(tǒng)系統(tǒng)提高了12%以上。SK海力士正在與客戶一起驗證96 GB和128 GB容量的CXL 2.0內(nèi)存。該公司計劃在今年年底開始大規(guī)模生產(chǎn)。
除了SK海力士,三星電子也積極投入CXL研發(fā),2021年5月就推出了基于DDR5技術(shù)支持CXL互聯(lián)標(biāo)準(zhǔn)的內(nèi)存模塊,并隨后發(fā)布了首款支持CXL內(nèi)存平臺設(shè)計的開源軟件解決方案。今年1月,三星宣布與開源軟件商Red Hat合作,在Red Hat Enterprise Linux (RHEL) 9.3操作系統(tǒng)中,首次成功驗證了CXL在真實用戶環(huán)境中的運行,包括內(nèi)存識別、讀取和寫入操作。6月,隨著實際應(yīng)用研究進入最后階段,三星宣布已建立由Red Hat認證的CXL基礎(chǔ)設(shè)施。7 月 ,三星電子內(nèi)存部門新業(yè)務(wù)規(guī)劃團隊負責(zé)人 Choi Jang Seok 表示,三星將在年底開始量產(chǎn)符合 CXL 2.0 協(xié)議的 256GB CMM-D 2.0 模塊。10月份,三星展示了其在CXL技術(shù)方面的進展,其計劃在2024年底前量產(chǎn)符合CXL 2.0協(xié)議的256GB CMM-D,且同聯(lián)想一道完成了業(yè)界首個 128GB CMM-D CXL 內(nèi)存模塊聯(lián)合驗證。受測 CMM-D 模塊搭載三星電子 12nm 級 32Gb DDR5 DRAM 顆粒與瀾起科技的新一代 CXL 控制器,相較以往產(chǎn)品帶寬提升 10%,延遲降低 20%,在支持 CXL 的聯(lián)想服務(wù)器上成功進行了測試。除 CMM-D 外,三星電子還規(guī)劃了多個類型的 CXL 存儲產(chǎn)品,包含配備多個 CMM-D 模塊的 CMM-B 內(nèi)存盒模組、同時搭載 DRAM 內(nèi)存和 NAND 閃存顆粒的 CMM-H 混合存儲模組。
?03、CXL 3.1也來了
自2019年首次發(fā)布以來,CXL在過去幾年里已經(jīng)演進到了CXL 3.1標(biāo)準(zhǔn)。在適用范圍方面,也從一開始的僅支持有限功能,增加到對橫向擴展 CXL 進行了額外的結(jié)構(gòu)改進、新的可信執(zhí)行環(huán)境增強以及內(nèi)存擴展器的改進。
CXL 3.0響應(yīng)了設(shè)備供應(yīng)商的需求,將比CXL 1.X版本提升了帶寬,并將一些原本復(fù)雜的標(biāo)準(zhǔn)設(shè)計簡單化,確保易用性。這是2020年CXL 2.0標(biāo)準(zhǔn)引入內(nèi)存池和CXL開關(guān)功能之后較大的改動,CXL 3.0將側(cè)重于物理和邏輯層面的升級,在物理層面,CXL將每通道吞吐量提升了一倍,達到64GT/s。在邏輯層面,CXL 3.0擴招了標(biāo)準(zhǔn)邏輯能力,允許更復(fù)雜的連接拓撲,以及一組CXL設(shè)備內(nèi)可以靈活實現(xiàn)內(nèi)存共享和內(nèi)存訪問。相對于CXL 1.X和CXL 2.0建立在PCIe 5.0之上,CXL 3.0與PCIe 6.0規(guī)范進行合并,這也使得CXL 3.0成為標(biāo)準(zhǔn)建立以來第一次物理層更新。
CXL 3.1是對CXL 3.0版本的漸進性的更新,新規(guī)范對橫向擴展 CXL 進行了額外的結(jié)構(gòu)改進、新的可信執(zhí)行環(huán)境 ehnahcments 以及對內(nèi)存擴展器的改進。
如今,眾多廠商正在布局CXL3.0和3.1。
最近,SK海力士和一家韓國上市IC設(shè)計公司簽訂了一份311億韓元規(guī)模的CXL(Compute Express Link)高速互聯(lián)存儲器控制器設(shè)計合約,期限至2026年6月30日??紤]研發(fā)所需時間,預(yù)計CXL3.0或3.1芯片將通過臺積電5納米制程量產(chǎn)。
今年11月,AMD 發(fā)布第二代 Versal Premium 系列自適應(yīng) SoC 平臺。這也是FPGA 行業(yè)首款在硬 IP 中采用 CXL3.1 與 PCIe Gen6 并支持 LPDDR5 存儲器的器件,實現(xiàn)了業(yè)界領(lǐng)先的高帶寬主機 CPU 與加速器的連接。與CXL 2.0相比,能夠?qū)崿F(xiàn)兩倍的帶寬,并且可以利用NUMA輕松與現(xiàn)有的軟件集成。第二代 AMD Versal Premium 系列開發(fā)工具預(yù)計將于 2025 年第二季度提供,隨后于 2026 年初提供芯片樣片。預(yù)計將于 2026 年下半年開始量產(chǎn)出貨。
三星電子內(nèi)存部門新業(yè)務(wù)規(guī)劃團隊負責(zé)人 Choi Jang Seok稱:“當(dāng) CXL 3.1 和池化(可在多個主機間共享 CXL 內(nèi)存資源)技術(shù)得到支持后,CXL 市場將在 2028 年左右全面開花?!?/p>