1

CXL技術路線現(xiàn)狀與未來規(guī)劃

阿里云目前的產品基于CXL 2.0技術,但隨著CXL 3.0協(xié)議的演進,公司正積極規(guī)劃多代產品以逐步實現(xiàn)新協(xié)議的全部功能。CXL 3.0協(xié)議在可擴展性、緩存一致性以及互連架構方面帶來了顯著變化,阿里云計劃通過分代產品逐步引入這些特性。

在系統(tǒng)池化架構的演進上,阿里云已在CXL 2.0階段實現(xiàn)了內存及持久化內存的池化和共享,并打通了內存池系統(tǒng)管控和運維的鏈路。,包括對池化資源的管理故障處理以及RAS方案等。未來,隨著CXL 3.0的引入,阿里云將規(guī)劃在多級Switch場景下擴大資源池化規(guī)模,并引入更多類型的資源,最終走向基于CXL Fabric的可組合架構,支持更靈活的資源配比和更高效的數(shù)據流動。

2

磐久服務器

CXL內存池系統(tǒng)架構

阿里云磐久服務器推出的CXL內存池系統(tǒng),是業(yè)界首個基于CXL Switch的內存池業(yè)務系統(tǒng)解決方案。該系統(tǒng)包含4臺2U通用計算服務器、阿里云自研的CXL Switch Box以及內存節(jié)點(JBOM),通過CXL連接實現(xiàn)了高性能的內存池化系統(tǒng)。

系統(tǒng)采用三層拓撲架構:

在機架的上層部署了多臺雙路CPU服務器;

機柜的中層是包含兩顆交換芯片以及一顆管理CPU的CXL Switch Box,其中每顆交換芯片的上行端口分別連接每臺服務器的兩個CPU Socket。同時Box內的管理CPU通過25G高速控制網絡實現(xiàn)毫秒級資源調度。

機柜的下層是CXL內存節(jié)點(JBOM),最多支持插入32塊阿里自研的Alimemory內存模組,該模組支持128GB和256GB兩個規(guī)格,單箱容量最高達8TB(雖系統(tǒng)兼容512GB模組,但經驗證128G/256G為TCO最佳選擇)。CXL Switch Box和JBOM都配備了獨立的BMC,經帶外網絡接入統(tǒng)一的帶外管理系統(tǒng),實現(xiàn)CXL內存池系統(tǒng)的管控運維。

基于RDMA的分布式方案存在的問題

在面對大客戶對數(shù)據庫容量和性能的高要求,阿里云PolarDB數(shù)據庫采用了三層解耦架構,將計算和內存分層,并引入了分布式的內存池。在CXL技術應用之前,該架構依賴RDMA實現(xiàn)內存層與計算池和存儲池的連接。但在超大規(guī)模數(shù)據庫場景中,現(xiàn)有基于RDMA的分布式方案存在以下問題:

內存成本增加:雙端Buffer Pool架構導致內存成本上升——計算節(jié)點需保留本地內存,同時額外部署遠端內存池。

讀寫放大效應:RDMA不支持原生內存語義,導致16KB數(shù)據頁即便僅訪問少量字節(jié)(如512B),也需將整頁從遠端內存拷貝至本地內存,引發(fā)高達32倍的帶寬浪費(16K/512B),致使一些場景下網絡吞吐成為系統(tǒng)性能瓶頸。

故障恢復速度慢:故障恢復慢一直是數(shù)據庫場景的一大挑戰(zhàn),尤其在需要通過redo log恢復數(shù)據頁的情況下

缺乏緩存一致性:在多主架構下,所有DB節(jié)點都可以同時訪問整個數(shù)據庫所有的頁。在這種情況下會頻繁出現(xiàn)數(shù)據頁從一個節(jié)點遷移到另一個節(jié)點的情況,產生了額外的網絡帶寬開銷。

4

架構創(chuàng)新

基于CXL Switch的三層解耦內存層重構

隨著CXL技術的引入,阿里云PolarDB數(shù)據庫對三層解耦架構進行了全面改造,推出了業(yè)界首個基于CXL Switch的云數(shù)據庫PolarCXLMem。該架構相比RDMA分布式內存層,業(yè)務端到端性能提升了2倍以上,同時實現(xiàn)了跨節(jié)點的緩存共享,徹底解決了讀寫放大以及數(shù)據拷貝的問題。

核心優(yōu)勢:CXL技術賦能的多維性能突破

1. 低延遲與高帶寬:CXL在64B小粒度訪問(如事務操作)至16K大粒度數(shù)據頁訪問的全場景下,延遲性能顯著優(yōu)于RDMA,且?guī)拑?yōu)勢為大粒度數(shù)據傳輸(如完整數(shù)據頁讀寫)提供了更優(yōu)支持。

2. CXL原生支持內存語義,一方面簡化了編程模式,另一方面也避免了RDMA方案中數(shù)據需從遠端通過RDMA網卡拷貝至本地緩存的額外開銷。通過直接將數(shù)據庫緩存頁構建在CXL內存內,消除了IO延遲及數(shù)據搬移的開銷。

3. 跨節(jié)點緩存一致性保障:針對多主場景,團隊設計了跨主機緩存一致性方案(當前為軟件方案,兼容未來CXL3.0硬件緩存一致性協(xié)議),通過集中式緩存管理模塊協(xié)調各節(jié)點緩存頁狀態(tài),解決了傳統(tǒng)分布式架構中數(shù)據同步與一致性問題。

從理論到實踐的顯著提升

  1. 本地緩存遷移可行性驗證:傳統(tǒng)認知中數(shù)據庫為延遲敏感業(yè)務,但實測表明,將本地頁緩存全部遷移至CXL內存后,絕大多數(shù)業(yè)務場景性能僅下降5%以內(極端場景10%以內),驗證了CXL內存替代本地緩存的可行性?;诖耍琍olarCXLMem徹底放棄了Tiered Memory分層架構,選擇直接在CXL內存池構建數(shù)據頁緩存系統(tǒng)。
  1. 讀寫放大與負載優(yōu)化:CXL內存池的集中式緩存設計避免了傳統(tǒng)分層架構中“僅訪問部分數(shù)據卻需拷貝整頁”的讀寫放大問題,同時消除了數(shù)據來回拷貝的系統(tǒng)負載,顯著降低整體帶寬資源消耗。
  1. 故障恢復能力增強:CXL內存與計算節(jié)點采用獨立供電與故障域設計,單節(jié)點故障時數(shù)據無需依賴本地緩存恢復(傳統(tǒng)方案需從持久化介質重還原),故障恢復速度大幅提升(實測人為插入故障時,基于PolarCXLMem的故障恢復方案PolarRecv恢復速度遠超傳統(tǒng)方案)。
  1. 跨主機緩存一致性:通過高性能的軟件緩存一致性協(xié)議設計,PolarCXLMem實現(xiàn)了DB節(jié)點和中心管理節(jié)點通過CXL共享內存共同管理和維護全局頁緩存目錄?;贑XL內存池的共享頁緩存方案,大幅提升了多主架構的端到端性能。
  1. 多場景性能對比:

  單點讀場景:吞吐量達RDMA方案的3倍以上,帶寬需求顯著降低;

  全頁訪問(range-select):吞吐量提升2倍,平均延遲降低50%;

  多主場景:在共享數(shù)據百分比較低的場景表現(xiàn)優(yōu)異(最大提升62%),即使在全共享和嚴重頁沖突(鎖系統(tǒng)瓶頸)的場景下,仍保持27%的性能優(yōu)勢(對比RDMA)。

結語:

阿里云在CXL技術領域的創(chuàng)新研發(fā)不僅為數(shù)據庫場景帶來了革新,更為未來計算架構的發(fā)展指明了方向。隨著CXL技術的不斷成熟和應用場景的拓展,阿里云將繼續(xù)推動CXL技術的發(fā)展與應用,為全球用戶提供更高效、更靈活、更可靠的云計算服務。

此次分享不僅展示了阿里云在CXL技術上的深厚積累和實踐經驗,更為行業(yè)內的技術創(chuàng)新和生態(tài)建設提供了有力支持。未來,阿里云將攜手合作伙伴共同推動CXL技術的標準化和生態(tài)普及,開啟高效計算的新時代。  

分享到

lixiangjing

算力豹主編

相關推薦