基於PCIe 5.0的CXL是什麼?

文章推薦指數: 80 %
投票人數:10人

其中CXL(Compute Express Link)看起來並不顯眼,卻為Intel的Xe顯示卡的 ... 裡面介紹了記憶體一致性的重要性,那麼CXL會帶來什麼,它和PCIe 5.0又是 ... MdEditor 基於PCIe5.0的CXL是什麼? 語言:CN/TW/HK 時間 2019-05-1208:10:50 UEFI和BIOS探祕 主題: Intel處理器 ARM處理器 GPU 前一陣舉行的“InterconnectDay2019”,Intel宣佈了一系列新技術。

其中CXL(ComputeExpressLink)看起來並不顯眼,卻為Intel的Xe顯示卡的未來發展投射出一條可能的方向: CXL有很大的野心:解決CPU和裝置、裝置和裝置之間的memory鴻溝。

普通電腦使用者也許偶爾會想到用用視訊記憶體,用不了也無傷大雅,這個需求並不強烈。

但伺服器使用者有巨大的記憶體池和數量龐大的基於PCIe運算加速器,每個上面都有很大的記憶體。

記憶體的分割已經造成巨大的浪費、不便和效能下降。

CXL就是為解決這個問題而誕生。

我在前文: 老狼:視訊記憶體為什麼不能當記憶體使?記憶體、Cache和Cache一致性​zhuanlan.zhihu.com 裡面介紹了記憶體一致性的重要性,那麼CXL會帶來什麼,它和PCIe5.0又是什麼關係呢? CXL的先驅者們 說PCIe不能訪問主存並不嚴謹,實際上PCIe可以訪問記憶體-通過DMA的方法。

PCIe裝置可以發起一個DMA來訪問記憶體,只要知道目標實體地址即可。

DMA訪問避免了CPU作為二傳手,加快了記憶體訪問速度,但也帶來了一定的安全問題。

曾經有黑客通過定製的PCIe卡,通過DMA掃描記憶體,可以偷走所有記憶體資料,從而讓記憶體變成完全不設防的城市,這給BIOS工程師造成了一定的麻煩,不得不到處封堵漏洞。

DMA對記憶體的訪問還是要通過記憶體控制器,延遲問題相當高,基於此,Intel推出了I/OAT技術,DMA可以直接訪問CPULLCcache,大大提高了效能,I/OAT在網絡卡等高速裝置上得到了廣泛應用。

儘管I/OAT解決了部分問題,但主存和裝置記憶體的割裂問題遠遠沒有得到解決,它們的地址不能統一編址,快取一致性也不能保證。

那麼在CXL之前,有沒有相關的解決方案呢?有的,還不只一種。

其中就有以IBM牽頭的OpenCAPI,ARM為代表支援的CCIX,AMD等支援的GenZ和Nvidia自行提出的Nvlink等等多種協議,可謂一個亂字了得。

因為篇幅所限,我們單獨簡單瞭解一下和CXL定位比較接近的Nvlink。

Nvlink解決GPU到GPU,CPU到GPU的記憶體一致性和統一問題 Nvlink可以替代SLI來連線GPU和GPU;如果CPU也支援Nvlink,則整個CPU和GPU的cache一致性和記憶體統一編址也可以做到。

不過悲劇的是AMD和Intel並不打算在CPU裡面支援nvlink,沒有CPU的支援,Nvlink功能就被大大矮化,只能看作SLI的升級版。

不過IBM卻為此兩肋插刀,儘管有自己的OpenCAPI,還在powerCPU裡面集成了NvLink: CXL來了 CXL標準預覽版文件已經開放下載,大家可以下載下來仔細研究一下。

現代主存和裝置記憶體是割裂的,相互互動延遲非常大: 初代CXL包括自己的協議,但是執行在PCIegen5(5.0)的物理層上,並寄希望在Gen6上能夠得到更廣泛的應用: CXL協議包括三個子協議: CXL.io是IO型別,和傳統PCIe類似 CXL.cache允許裝置訪問主存和cache CXL.memory允許CPU訪問裝置的記憶體. 來源:參考資料4 CXL相比上文介紹的基於CA和HA的引擎簡單了很多: 來源:參考資料4 和UPI的cache一致性對稱性設計不同,CXL是非對稱的。

UPI的對稱性設計是指各個node都有HA和CA;而CXL則只有CPU有HA和CA,裝置沒有CA,只有HA。

這簡化了裝置的設計,並允許沒有cache的裝置加入cache一致性的大家庭。

結語 通過CXL,主存和裝置記憶體可以在保證Cache一致性的前提下,還提供Bias的靈活性。

相信傳說中的Xe顯示卡應該會自帶這種高階特性。

同時在不遠的未來,應該會出現PCIe形式出現的記憶體擴充套件卡。

CXL和它的競爭對手的較量還遠遠沒有結束,有些廠商為了避免掉隊,紛紛腳踩兩隻甚至數只船。

誰能在未來脫穎而出,也許取決於誰更開放,誰更能夠和PCIe協議更好的融合。

未來如何,讓我們拭目以待。

「其他文章」 UEFI在ARM生態中現狀如何?ARMSystemReady認證金標準介紹 有趣的螢幕省電技術:IntelDPST動態節能技術 BIOSer必讀:Intel的下一代BIOS標準USF 為什麼膝上型電腦可以邊充電邊用?這樣會更費電池嗎?筆電充電子系統詳解 AMDEPYC伺服器市佔率為什麼越來越高?AMD環義大利的神奇之旅 對抗記憶體物理讀取攻擊的利器:IntelTME和AMDSME 為什麼CPU重啟之後第一條指令是啥也不幹的NOP?為啥還是接連兩條? 如何無痛嘗試Windows11? 記憶體對抗損壞的堅實堡壘:封裝後修復(PPR)是什麼? DDR5vsDDR4:I3C和I2C相較提高了什麼?為什麼必須升級到I3C? DDR5來了,它長什麼樣?外觀上有哪些特徵?是不是該上船了? 為什麼最新的CPU中全整合電壓調節模組FIVR又回來了?它帶來什麼好處? UEFI新書推薦:《UEFI程式設計實踐》 用USB3.0WinDbg開始你的除錯之旅 又發現寶藏軟體:硬體愛好者和BIOSer的好助手:HE 選擇記憶體條的必備知識:x16記憶體條為什麼這麼慢?2R和1R重要嗎? 解決國產CPU產業鏈中,系統韌體BIOS分裂嚴重的銀彈:ByoCore2.0 國產作業系統之殤:Linux安全啟動的簽名問題 出廠自帶的Windows是怎麼啟用的?兼談國產作業系統的收費困境 下一代BIOS標準探討之四:UEFI界中的樂高—MinPlatform 「Intel處理器」 AMD銳龍96900HX曝光:整合全新RX680M圖形單元 實體清單就是寶貝清單“中國英特爾”為什麼驚動美國?|了不起的新實體 英特爾i5-12400評測出爐:能效明顯提升,烤機功耗73瓦 英特爾有多強,晶片國產之路就有多艱辛 從數字化、智慧化啟程,實現電網現代化升級 曝蘋果A16處理器無緣3nm臺積電首批產能被蘋果、Intel平分 一路高歌的晶片 英特爾公開玩火,燒著的是國產晶片的後院 三年在華收入5822億、過半晶片產自成都英特爾禁用新疆產品為哪般? 我就知道又得換電腦了,這晶片真的太香! 「ARM處理器」 歐洲自研處理器第一階段完成:雙架構、29個RISC-V核心 俄羅斯自研48核心處理器點亮!雙架構、效能落後華為鯤鵬15% “芯”慌未定,ARM進擊,移動處理器“新貴”如何破局? 深扒:亞馬遜的戰略顛覆與技術洗牌 ARM即將吞噬一切? 全球首發新一代驍龍8!motoedgeX30釋出:首發僅2999元起 壁仞、高瓴,“搞”了個天使輪 比起跑分、能效比才是亮點:驍龍8理論效能測試詳解 未來MCU設計的幾個方向 A15,新策略,新起點



請為這篇文章評分?