存儲(chǔ)成本不斷增加,以及更為現(xiàn)實(shí)的計(jì)算和帶寬失衡困境,使得英特爾二十年前開(kāi)創(chuàng)的PCI-e(PCI Express)技術(shù)逐漸乏力,我們?cè)絹?lái)越期待一種以內(nèi)存為中心的、富有變革性的新技術(shù)出現(xiàn),基于PCI-e協(xié)議的CXL技術(shù)便在此環(huán)境下出世。
2019年,英特爾推出了CXL技術(shù),短短幾年時(shí)間,CXL便成為業(yè)界公認(rèn)的先進(jìn)設(shè)備互連標(biāo)準(zhǔn),其最為強(qiáng)勁的競(jìng)爭(zhēng)對(duì)手Gen-Z、OpenCAPI都紛紛退出了競(jìng)爭(zhēng),并將Gen-Z協(xié)議、OpenCAPI協(xié)議轉(zhuǎn)讓給CXL。 這種業(yè)界矚目的技術(shù)究竟有何來(lái)頭?以及現(xiàn)在業(yè)界火熱的內(nèi)存池、內(nèi)存共享等概念又是什么? 以下將分成上下兩篇,和大家一起深度了解CXL技術(shù)。
本文要點(diǎn):
CXL是一個(gè)全新的得到業(yè)界認(rèn)同的互聯(lián)技術(shù)標(biāo)準(zhǔn),其正帶著服務(wù)器架構(gòu)迎來(lái)革命性的轉(zhuǎn)變。
CXL可以有效解決內(nèi)存墻和IO墻的瓶頸。
目前,PCI-e技術(shù)是當(dāng)下CXL技術(shù)的底層基礎(chǔ),會(huì)較早進(jìn)行迭代升級(jí)。CXL可視為PCI-e技術(shù)的再提高版本,并且,CXL延伸了更多變革性的功能。
CXL2.0內(nèi)存的池化(Pooling)功能較好的實(shí)現(xiàn)了以內(nèi)存為中心的構(gòu)想,CXL3.0則實(shí)現(xiàn)Memory sharing(內(nèi)存共享)和內(nèi)存訪問(wèn),在硬件上實(shí)現(xiàn)了多機(jī)共同訪問(wèn)同樣內(nèi)存地址的能力。
01CXL為何物?
CXL全稱為Compute Express Link,作為一種全新的互聯(lián)技術(shù)標(biāo)準(zhǔn),其能夠讓CPU與GPU、FPGA或其他加速器之間實(shí)現(xiàn)高速高效的互聯(lián),從而滿足高性能異構(gòu)計(jì)算的要求,并且其維護(hù)CPU內(nèi)存空間和連接設(shè)備內(nèi)存之間的一致性??傮w而言,其優(yōu)勢(shì)高度概括在極高兼容性和內(nèi)存一致性兩方面上。
CXL技術(shù)之所以值得期待,是因?yàn)樗岢隽艘环N有效解決當(dāng)下業(yè)界頗為頭疼的內(nèi)存墻和IO墻問(wèn)題的方式。 △常見(jiàn)的存儲(chǔ)系統(tǒng)架構(gòu)及存儲(chǔ)墻(全球半導(dǎo)體觀察制圖)
內(nèi)存墻和IO墻現(xiàn)象來(lái)源于當(dāng)前計(jì)算架構(gòu)中的多級(jí)存儲(chǔ)。如圖所示,當(dāng)前的主流計(jì)算系統(tǒng)所使用的數(shù)據(jù)處理方案,依賴于數(shù)據(jù)存儲(chǔ)與數(shù)據(jù)處理分離的體系結(jié)構(gòu)(馮諾依曼架構(gòu)),為了滿足速度和容量的需求,現(xiàn)代計(jì)算系統(tǒng)通常采取高速緩存(SRAM)、主存(DRAM)、外部存儲(chǔ)(NAND Flash)的三級(jí)存儲(chǔ)結(jié)構(gòu)。
每當(dāng)應(yīng)用開(kāi)始工作時(shí),就需要不斷地在內(nèi)存中來(lái)回傳輸信息,這在時(shí)間和精力上都有著較大的性能消耗。越靠近運(yùn)算單元的存儲(chǔ)器速度越快,但受功耗、散熱、芯片面積的制約,其相應(yīng)的容量也越小。如SRAM響應(yīng)時(shí)間通常在納秒級(jí),DRAM則一般為100納秒量級(jí),NAND Flash更是高達(dá)100微秒級(jí),當(dāng)數(shù)據(jù)在這三級(jí)存儲(chǔ)間傳輸時(shí),后級(jí)的響應(yīng)時(shí)間及傳輸帶寬都將拖累整體的性能,形成“存儲(chǔ)墻”。
IO墻則產(chǎn)生于外部存儲(chǔ)中,因?yàn)閿?shù)據(jù)量過(guò)于龐大,內(nèi)存里放不下就需要借助外部存儲(chǔ),并用網(wǎng)絡(luò)IO來(lái)訪問(wèn)數(shù)據(jù)。IO方式的訪問(wèn)會(huì)使得訪問(wèn)速度下降幾個(gè)數(shù)量級(jí),嚴(yán)重拖累著整體性能,這即是IO墻。
現(xiàn)代處理器性能的不斷提升,而內(nèi)存與算力之間的技術(shù)發(fā)展差距卻不斷增大。業(yè)界數(shù)據(jù)顯示,在過(guò)去的20多年中,處理器的性能以每年大約55%速度快速提升,而內(nèi)存性能的提升速度則只有每年10%左右。并且,當(dāng)代內(nèi)存容量擴(kuò)展面臨著摩爾定律的壓力,速度在逐年減緩的同時(shí),帶來(lái)的則是成本的愈發(fā)高昂。隨著大數(shù)據(jù)AI/ML等應(yīng)用爆發(fā),以上問(wèn)題已經(jīng)成為制約計(jì)算系統(tǒng)性能的主要因素。
02從CXL1到CXL3,
內(nèi)存池和內(nèi)存共享的奇妙構(gòu)想
作為一項(xiàng)嶄新的技術(shù),CXL發(fā)展非??芍^非常迅速,過(guò)去四年時(shí)間CXL已經(jīng)發(fā)表了1.0/1.1、2.0、3.0三個(gè)不同的版本,并且它有著非常清晰的技術(shù)發(fā)展路線圖,業(yè)界也對(duì)它的未來(lái)充滿期待。
△圖片來(lái)源:CXL聯(lián)盟
CXL1.1直球式連接,帶來(lái)容量和帶寬的拓展
在2019年,CXL的第一個(gè)版本CXL1.0/1.1誕生,其直面內(nèi)存墻和IO墻瓶頸的直球式打法給業(yè)界留下了深刻的印象。CXL1.1起初解決的問(wèn)題還只是單機(jī)設(shè)備的問(wèn)題,主要是對(duì)一臺(tái)服務(wù)器里的內(nèi)存容量和帶寬進(jìn)行擴(kuò)展(Memory Expansion)。
CXL在創(chuàng)立之初便支持三種協(xié)議,分別是CXL.io,CXL.cache,CXL.mem。CXL.io是PCIe5.0的增強(qiáng)版本,運(yùn)行在PCIe總線的物理層上,CXL.cache用于一致的主機(jī)緩存訪問(wèn),CXL.mem則用于主機(jī)內(nèi)存訪問(wèn)。正如CXL1.0和1.1標(biāo)準(zhǔn)中定義的那樣,這三種方法構(gòu)成了連接主機(jī)和設(shè)備的新方法的基礎(chǔ)。
創(chuàng)新來(lái)講,CXL引入了Flex Bus端口,可以靈活的根據(jù)鏈路層協(xié)商決定是采用PCIE協(xié)議還是CXL協(xié)議。
這讓我們更好的理解CXL和PCI-e的關(guān)系,正因?yàn)镃XL較高的兼容性,更容易被現(xiàn)有支持PCI-e端口的處理器(絕大部分的通用CPU、GPU 和 FPGA)所接納,因此,英特爾將CXL視為在PCIe物理層之上運(yùn)行的一種可選協(xié)議,也就是說(shuō)PCI-e的互聯(lián)協(xié)議沒(méi)有被完全拋棄,并且英特爾還計(jì)劃在第六代PCI-e標(biāo)準(zhǔn)上大力推進(jìn)CXL的采用。
從CXL1.0/1.1、PCIe5.0、CXL2.0以及PCIe6.0CXL3.0的發(fā)展軌跡,我們也可以清晰看出CXL和PCI-e的關(guān)系。PCI-e技術(shù)作為CXL技術(shù)的底層基礎(chǔ),會(huì)更早進(jìn)行迭代升級(jí)。CXL可視為PCI-e技術(shù)的再提高版本,并且,CXL延伸了更多變革性的功能。 從CXL2.0開(kāi)始,該技術(shù)就超出了單機(jī)的范疇,并衍生出了內(nèi)存池的概念。
CXL2.0內(nèi)存池帶來(lái)的變革
鑒于CXL標(biāo)準(zhǔn)誕生并不久,目前,CXL2.0是市場(chǎng)最為關(guān)注的焦點(diǎn)。
在CXL1.0和1.1的基礎(chǔ)上,2.0版本增加了熱插拔(Hot Plug)、安全升級(jí)、持久內(nèi)存(Persistent Memory)、Telemetry和RAS的支持,但最為重要的功能,還是可以改變服務(wù)器業(yè)界生態(tài)構(gòu)型的Switching,以及它帶來(lái)的加速卡(AI、ML和Smart NIC)和內(nèi)存的池化(Pooling)。
關(guān)于設(shè)備的Pooling(池化),業(yè)界也曾進(jìn)行過(guò)許多的構(gòu)想與技術(shù)嘗試,想要將各類資源或是數(shù)據(jù)放入一個(gè)共享的池子按需提取,如FaceBook致力于分離(disaggregate)和池化(pool)內(nèi)存,IBM的CAPI和OpenCAPI、英偉達(dá)的NVLink和NVSwitch、AMD的Infinity Fabric、賽靈思的CCIX,以及HPE和戴爾提供支持Gen-Z。因?yàn)楦鞣N各樣的原因,上述技術(shù)并沒(méi)有很好的發(fā)展開(kāi)來(lái)。直到CXL2.0的池化操作變成現(xiàn)實(shí),業(yè)界再次燃起希望。
CXL1.1還只限于單一Node,是一種CPU到CPU,或者CPU到PCIe設(shè)備的cache一致性互聯(lián)。2.0技術(shù)加入了一層(Single Level)的Switch(想一想PCIe的Switch),實(shí)現(xiàn)了多個(gè)設(shè)備連接到一個(gè)root port上,為后面的池化打下了技術(shù)基礎(chǔ)。
△圖片來(lái)源:CXL聯(lián)盟
上圖的H1到H4到Hn指的是一個(gè)個(gè)不同的主機(jī)(Host),也就是一個(gè)個(gè)服務(wù)器(Server),它可以通過(guò)CXL Switch連接多個(gè)設(shè)備,底下的D1、D2、D3、D4指的是不同的內(nèi)存,也是通過(guò)CXL Switch連到上層的主機(jī)里。圖中不同的顏色代表設(shè)備的擁有者,如D1屬于H2,D2和D3屬于H1。SLD一個(gè)設(shè)備只能被分配到一個(gè)Hos上。
在這套框架之下,它使得Memory Polling(內(nèi)存池)成為可能,你可以跨系統(tǒng)設(shè)備實(shí)現(xiàn)共享內(nèi)存池,這就增加了很多的靈活性。比如,如果有機(jī)器內(nèi)存不夠時(shí),就可以靈活地在這個(gè)池子里尋找內(nèi)存空間;如果這臺(tái)機(jī)器不需要這些內(nèi)存了還可以隨時(shí)還回來(lái)。也就是說(shuō)越靠近CPU的存儲(chǔ)器(如DRAM)將被用來(lái)處理更為亟需的工作,這無(wú)疑將大大提高內(nèi)存的使用率,或者降低內(nèi)存的使用成本。
CXL3.0共享內(nèi)存時(shí)代的到來(lái)
CXL 3.0是在2022年8月份發(fā)布的新標(biāo)準(zhǔn),其在許多方面都進(jìn)行了較大的革新,首先,CXL3.0建立在PCI-Express 6.0之上(CXL1.0/1.1和2.0版本建立在PCIe5.0之上),其帶寬提升了兩倍,并且其將一些復(fù)雜的標(biāo)準(zhǔn)設(shè)計(jì)簡(jiǎn)單化,確保了易用性。
△圖片來(lái)源:CXL聯(lián)盟
最為關(guān)鍵的革新還在于物理和邏輯層面的升級(jí),在物理層面,CXL3.0將每通道吞吐量提升了一倍,達(dá)到64GT/s。邏輯層面上,CXL3.0擴(kuò)招了標(biāo)準(zhǔn)邏輯能力,允許更復(fù)雜的連接拓?fù)洌约耙唤MCXL設(shè)備內(nèi)可以靈活實(shí)現(xiàn)Memory sharing(內(nèi)存共享)和內(nèi)存訪問(wèn)。比如,它可以使得多個(gè)Switch互相連接,可以使得上百個(gè)服務(wù)器互聯(lián)并共享內(nèi)存。
Memory sharing是非常大的一個(gè)亮點(diǎn),這種能力突破了某一個(gè)物理內(nèi)存只能屬于某一臺(tái)服務(wù)器的限制,在硬件上實(shí)現(xiàn)了多機(jī)共同訪問(wèn)同樣內(nèi)存地址的能力??梢哉f(shuō),CXL的內(nèi)存一致性得到很大的增強(qiáng),因?yàn)榇饲暗腃XL2.0只能通過(guò)軟件實(shí)現(xiàn)Memory sharing。
CXL來(lái)勢(shì)洶洶,在CXL技術(shù)推出的那一年,CXL聯(lián)盟也隨之成立,由英特爾牽頭,聯(lián)合阿里巴巴、戴爾EMC、Facebook(Meta)、谷歌、HPE、華為和微軟共同建立,隨后AMD、Arm加入其中。
近兩年,CXL聯(lián)盟擴(kuò)展出超過(guò)165個(gè)成員,幾乎涵蓋了所有主要的CPU、GPU、內(nèi)存、存儲(chǔ)和網(wǎng)絡(luò)設(shè)備制造商。而在技術(shù)上,2022年,Gen-Z聯(lián)盟、Open CAPI聯(lián)盟均確認(rèn)將所有技術(shù)規(guī)格和資產(chǎn)轉(zhuǎn)讓給CXL,確保CXL作為行業(yè)標(biāo)準(zhǔn)向前推進(jìn),對(duì)于業(yè)界而言,這是一個(gè)非常偉大的選擇。
03從存儲(chǔ)變革看CXL的未來(lái)意義
以內(nèi)存為中心的構(gòu)想由來(lái)已久,CXL對(duì)于未來(lái)的變革目前還無(wú)法想象,但是上世紀(jì)90年代,存儲(chǔ)也經(jīng)歷了一場(chǎng)類似的變革,這或許可以幫助我們更好的理解它。
上世紀(jì)90年代之前,存儲(chǔ)指的就是硬盤,由IBM研發(fā)的350 RAMAC的誕生標(biāo)志著人類正式進(jìn)入了硬盤時(shí)代。90年代初期,一個(gè)叫做Fiber Channel的網(wǎng)絡(luò)出現(xiàn),它使存儲(chǔ)從服務(wù)器里獨(dú)立出來(lái),變成一個(gè)與計(jì)算分離的、可以獨(dú)立擴(kuò)展與管理的系統(tǒng),這就是人們熟知的SAN系統(tǒng)。
隨后的存儲(chǔ)市場(chǎng)更是出現(xiàn)了各式各樣的網(wǎng)絡(luò)共享存儲(chǔ),這場(chǎng)技術(shù)革命,使得存儲(chǔ)從一個(gè)簡(jiǎn)單的器件行業(yè)變成了一個(gè)軟件和系統(tǒng)行業(yè),并隨著誕生了“存儲(chǔ)軟件”概念。
1995年,集合了軟件和硬件的SAN系統(tǒng)開(kāi)始出現(xiàn),2000年左右,第一代NAS開(kāi)始落地。不止的SAN系統(tǒng),在這段技術(shù)革命中,也涌現(xiàn)了一大批成功的領(lǐng)導(dǎo)者公司,包括EMC、NetApp、Veritas、PureStorage等等,存儲(chǔ)軟件和系統(tǒng)迅速成長(zhǎng)壯大為一個(gè)龐大的市場(chǎng)。
現(xiàn)在的內(nèi)存和30年前的硬盤存儲(chǔ)極為相似。
現(xiàn)在的內(nèi)存還只是服務(wù)器里的一個(gè)設(shè)備,隨著CXL的出現(xiàn),內(nèi)存可以和計(jì)算進(jìn)行分離,就像90年代存儲(chǔ)和計(jì)算分離一般,這意味著,內(nèi)存也有望獨(dú)立成為一個(gè)嶄新的系統(tǒng),并賦予更多的功能。
或許是看到了CXL潛力,2022年8月24日,JEDEC固態(tài)技術(shù)協(xié)會(huì)和Compute Express Link(CXL)聯(lián)盟宣布簽署合作備忘錄開(kāi)展合作,該協(xié)議表明將形成一個(gè)聯(lián)合工作組,以提供一個(gè)促進(jìn)信息、要求、建議和請(qǐng)求的交流和共享的論壇,目的是這種信息交流將有助于每個(gè)組織制定的標(biāo)準(zhǔn)相互增強(qiáng)。
業(yè)界表示,與具有380個(gè)引腳的DDR5接口提供32GB/s帶寬相比,CXL內(nèi)存控制器可以提供相同或更高的帶寬,利用x8或x16CXL通道分別提供32GB/s或64GB/s帶寬。CXL串行連接存儲(chǔ)器可用于緩解當(dāng)今解決方案的帶寬限制??傮w來(lái)看,CXL與JEDEC在DDR方面的合作將給內(nèi)存行業(yè)帶來(lái)新的轉(zhuǎn)機(jī)。
此外,據(jù)TrendForce集邦咨詢此前研判,CXL(Compute Express Link)原是希望能夠整合各種xPU之間的性能,進(jìn)而優(yōu)化AI與HPC所需要的硬件成本,并突破原先的硬件限制。
CXL的支援仍是以CPU為源頭去考慮,但由于可支援CXL功能的服務(wù)器CPU Intel Sapphire Rapids與AMD Genoa現(xiàn)階段僅支援至CXL 1.1規(guī)格,而該規(guī)格可先實(shí)現(xiàn)的產(chǎn)品則是CXL存儲(chǔ)器擴(kuò)充(CXL Memory Expander)。
因此,TrendForce認(rèn)為,在各種CXL相關(guān)產(chǎn)品內(nèi),CXL存儲(chǔ)器擴(kuò)充將成為前驅(qū)產(chǎn)品,其產(chǎn)品也與DRAM最為相關(guān)。
04結(jié)語(yǔ)
CXL時(shí)代將會(huì)很快到來(lái),業(yè)界消息顯示,2024年上半年,CXL1.1和CXL2.0可能會(huì)有落地產(chǎn)品,CXL3.0的落地還需要更長(zhǎng)時(shí)間?,F(xiàn)階段,相關(guān)的合作伙伴也在找相應(yīng)的廠商對(duì)一些工程樣品搭建環(huán)境進(jìn)行開(kāi)發(fā)測(cè)試。
目前,各大企業(yè)動(dòng)態(tài)頻頻,《大內(nèi)存時(shí)代,振奮人心的CXL技術(shù)》下篇將會(huì)對(duì)業(yè)界大廠在CXL上的布局以及CXL技術(shù)現(xiàn)存的一些短板進(jìn)行闡述。
審核編輯:劉清
-
DRAM
+關(guān)注
關(guān)注
40文章
2298瀏覽量
183204 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7430瀏覽量
163514 -
NIC
+關(guān)注
關(guān)注
0文章
23瀏覽量
12371 -
PCI-e
+關(guān)注
關(guān)注
0文章
11瀏覽量
6237
原文標(biāo)題:大內(nèi)存時(shí)代振奮人心的CXL技術(shù)(上)
文章出處:【微信號(hào):算力基建,微信公眾號(hào):算力基建】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論