雖然在技術(shù)上仍然是新事物,但用于主機(jī)到設(shè)備連接的 Compute Express Link (CXL) 標(biāo)準(zhǔn)已迅速在服務(wù)器市場占據(jù)一席之地。
據(jù)報(bào)道,該標(biāo)準(zhǔn)旨在提供建立在現(xiàn)有 PCI-Express 標(biāo)準(zhǔn)之上更豐富的 I/O 功能集,其最顯著的是優(yōu)勢在于設(shè)備之間的緩存一致性。從相關(guān)組織處獲悉,CXL的主要應(yīng)用方向是把CPU連接到服務(wù)器中的加速器,但希望能夠在物理上仍然是通過 PCIe 接口上連接 DRAM 和非易失性存儲(chǔ)。
這是一個(gè)雄心勃勃但得到廣泛支持的路線圖,在短短三年內(nèi)使,CXL 便成為事實(shí)上的先進(jìn)設(shè)備互連標(biāo)準(zhǔn),這就導(dǎo)致競爭對手標(biāo)準(zhǔn) Gen-Z、CCIX 以及截至昨天的 OpenCAPI 都退出了競爭。
雖然 CXL 聯(lián)盟在贏得互連戰(zhàn)爭后快速取得勝利,但聯(lián)盟及其成員還有很多工作要做。假如在產(chǎn)品方面,第一批帶有 CXL 的 x86 CPU 幾乎沒有出貨——這很大程度上取決于你所說的英特爾 Sapphire Ridge 芯片所處的邊緣狀態(tài)。
來到功能方面,設(shè)備供應(yīng)商要求獲得比比 CXL 的原始 1.x 版本更多的帶寬和更多的功能。贏得互連戰(zhàn)爭使 CXL 成為互連之王,但在此過程中,這意味著 CXL 需要能夠解決競爭對手標(biāo)準(zhǔn)設(shè)計(jì)的一些更復(fù)雜的用例。
為此,在本周的 2022 年閃存峰會(huì)上,CXL 聯(lián)盟在展會(huì)上宣布了 CXL 標(biāo)準(zhǔn)的下一個(gè)完整版本 CXL 3.0。這是繼2020 年底發(fā)布 2.0 標(biāo)準(zhǔn)并引入了內(nèi)存池和 CXL 開關(guān)等功能之后的一次重要更新。
報(bào)道指出,CXL 3.0 側(cè)重于互連的幾個(gè)關(guān)鍵領(lǐng)域的重大改進(jìn)。第一個(gè)是物理方面,CXL 將其每通道吞吐量翻了一番,達(dá)到 64 GT/秒。同時(shí),在邏輯方面,CXL 3.0 大大擴(kuò)展了標(biāo)準(zhǔn)的邏輯能力,允許復(fù)雜的連接拓?fù)浜徒Y(jié)構(gòu),以及在一組 CXL 設(shè)備內(nèi)更靈活的內(nèi)存共享和內(nèi)存訪問模式。
? ?
CXL 3.0:建立在 PCI-Express 6.0 之上
首先,我們從物理方面開始了解新版本的CXL 技術(shù)。資料顯示,新版本的標(biāo)準(zhǔn)提供了期待已久的更新,以合并 PCIe 6.0。CXL 之前的兩個(gè)版本,也就是 1.x 和 2.0,都是建立在 PCIe 5.0 之上的,所以這是自 2019 年 CXL 推出以來,其物理層的首次更新。 ? PCIe 6.0本身是對 PCI-Express 標(biāo)準(zhǔn)內(nèi)部工作的重大更新,它再次將總線上的可用帶寬量翻了一番,達(dá)到 64 GT/秒,對于 x16 卡來說,這可以達(dá)到 128GB/秒。據(jù)報(bào)道,這個(gè)速度是通過將 PCIe 從使用二進(jìn)制 (NRZ) 信號(hào)轉(zhuǎn)換為四態(tài) (PAM4) 信號(hào)并結(jié)合固定數(shù)據(jù)包 (FLIT) 接口來實(shí)現(xiàn)的。借助這種方法,能使其速度翻倍而不會(huì)在更高頻率下運(yùn)行的缺點(diǎn)。由于 CXL 反過來構(gòu)建在 PCIe 之上,這意味著需要更新標(biāo)準(zhǔn)以應(yīng)對 PCIe 的操作變化。 ?
? CXL 3.0 的最終結(jié)果是它繼承了 PCIe 6.0 的全部帶寬改進(jìn)——以及前向糾錯(cuò) (FEC) 等所有有趣的東西——與 CXL 2.0 相比,CXL 的總帶寬增加了一倍。 ? 值得注意的是,根據(jù) CXL 聯(lián)盟的說法,他們能夠在不增加延遲的情況下完成所有這些工作。這是 PCI-SIG 在設(shè)計(jì) PCIe 6.0 時(shí)面臨的挑戰(zhàn)之一,因?yàn)楸匾募m錯(cuò)會(huì)增加進(jìn)程的延遲,導(dǎo)致 PCI-SIG 使用低延遲形式的 FEC。盡管如此,CXL 3.0 在嘗試減少延遲方面更進(jìn)了一步,導(dǎo)致 3.0 具有與 CXL 1.x/2.0 相同的延遲。 ? 除了基本的 PCIe .60 更新之外,CXL 聯(lián)盟還調(diào)整了他們的 FLIT size。CXL 1.x/2.0 使用了一個(gè)相對較小的 68 字節(jié)數(shù)據(jù)包,而 CXL 3.0 將其增加到了 256 字節(jié)。更大的 FLIT size是 CXL 3.0 的關(guān)鍵通信變化之一,因?yàn)樗趆eader FLIT 中為標(biāo)準(zhǔn)提供了更多位,而這些位又是啟用 3.0 標(biāo)準(zhǔn)引入的復(fù)雜拓?fù)浜徒Y(jié)構(gòu)所必需的。盡管作為一項(xiàng)附加功能,CXL 3.0 還提供了一種低延遲“變體”FLIT 模式,該模式將 CRC 分解為 128 字節(jié)“sub-FLIT granular transfers”,旨在減輕物理層中的存儲(chǔ)和轉(zhuǎn)發(fā)開銷. ? 值得注意的是,256 字節(jié)的 FLIT 大小使 CXL 3.0 與 PCIe 6.0 保持一致,后者本身使用 256 字節(jié)的 FLIT。和它的底層物理層一樣,CXL 不僅支持在新的 64 GT/秒傳輸速率下使用大型 FLIT,而且還支持 32、16 和 8 GT/秒,本質(zhì)上允許新協(xié)議功能以更慢的傳輸速率使用. ? 最后,CXL 3.0 完全向后兼容早期版本的 CXL。因此,設(shè)備和主機(jī)可以根據(jù)需要降級(jí)以匹配硬件鏈的其余部分,盡管在此過程中會(huì)失去更新的功能和速度。 ? ?
CXL 3.0 特性:增強(qiáng)的一致性、
內(nèi)存共享、多級(jí)拓?fù)浜徒Y(jié)構(gòu)
除了進(jìn)一步提高整體 I/O 帶寬外,上述針對 CXL 的協(xié)議更改也已實(shí)施,以支持標(biāo)準(zhǔn)內(nèi)的新功能。CXL 1.x 是作為(相對)簡單的主機(jī)到設(shè)備標(biāo)準(zhǔn)而誕生的,但現(xiàn)在 CXL 是服務(wù)器的主要設(shè)備互連協(xié)議,它需要擴(kuò)展其功能以適應(yīng)更高級(jí)的設(shè)備,并最終適應(yīng)更大的用例。 ? 從特性級(jí)別開始,這里最大的新聞是該標(biāo)準(zhǔn)更新了具有內(nèi)存的設(shè)備的緩存一致性協(xié)議(Type-2 和 Type-3,用 CXL 的說法)。正如 CXL 所說,增強(qiáng)的一致性允許設(shè)備支持使主機(jī)緩存的數(shù)據(jù)無效。這取代了 CXL 早期版本中使用的基于偏差的一致性方法,為了保持簡潔,保持一致性不是通過共享內(nèi)存空間的控制,而是通過讓主機(jī)或設(shè)備負(fù)責(zé)控制訪問。相比之下,Back invalidation更接近真正的共享/對稱方法,允許 CXL 設(shè)備在設(shè)備進(jìn)行更改時(shí)通知主機(jī)。 ? 包含Back invalidation也為設(shè)備之間的新對等連接打開了大門。在 CXL 3.0 中,設(shè)備現(xiàn)在可以直接訪問彼此的內(nèi)存,而無需通過主機(jī),使用增強(qiáng)的一致性語義來通知彼此它們的狀態(tài)。從延遲的角度來看,跳過主機(jī)不僅速度更快,而且在涉及交換機(jī)的設(shè)置中,這意味著設(shè)備不會(huì)通過請求占用寶貴的主機(jī)到交換機(jī)帶寬。雖然我們稍后會(huì)進(jìn)入拓?fù)?,但這些變化與更大的拓?fù)涿芮邢嚓P(guān),允許將設(shè)備組織成虛擬層次結(jié)構(gòu),其中層次結(jié)構(gòu)中的所有設(shè)備共享一個(gè)一致性域。 ?
? 除了調(diào)整緩存功能外,CXL 3.0 還對主機(jī)和設(shè)備之間的內(nèi)存共享進(jìn)行了一些重要更新。CXL 2.0 提供了內(nèi)存池,其中多個(gè)主機(jī)可以訪問設(shè)備的內(nèi)存,但必須為每個(gè)主機(jī)分配自己的專用內(nèi)存段,而 CXL 3.0 引入了真正的內(nèi)存共享。利用新的增強(qiáng)一致性語義,多個(gè)主機(jī)可以擁有一個(gè)共享段的一致副本,如果設(shè)備級(jí)別發(fā)生變化,可以使用反向失效來保持所有主機(jī)同步。 ?
? 然而,應(yīng)該注意的是,這并不能完全取代池化。在某些用例中,CXL 2.0 風(fēng)格的池更可?。ū3忠恢滦孕枰獧?quán)衡取舍),并且 CXL 3.0 支持根據(jù)需要混合和匹配這兩種模式。 ? CXL 3.0 進(jìn)一步增強(qiáng)了這種改進(jìn)的主機(jī)設(shè)備功能,消除了之前對可以連接到單個(gè) CXL 根端口下游的 Type-1/Type-2 設(shè)備數(shù)量的限制。 ? CXL 2.0 只允許這些處理設(shè)備中的一個(gè)出現(xiàn)在根端口的下游,而 CXL 3.0 則完全解除了這些限制。現(xiàn)在,CXL 根端口可以支持 Type-1/2/3 設(shè)備的完全混合匹配設(shè)置,具體取決于系統(tǒng)構(gòu)建者的目標(biāo)。值得注意的是,這意味著能夠?qū)⒍鄠€(gè)加速器連接到單個(gè)交換機(jī),提高密度(每個(gè)主機(jī)更多的加速器),并使新的點(diǎn)對點(diǎn)傳輸功能更加有用。 ?
? CXL 3.0 的另一大特性變化是支持多級(jí)切換。這建立在 CXL 2.0 的基礎(chǔ)上,該版本引入了對 CXL 協(xié)議交換機(jī)的支持,但僅允許單個(gè)交換機(jī)駐留在主機(jī)及其設(shè)備之間。另一方面,多級(jí)交換允許多層交換機(jī)——也就是說,交換機(jī)饋入其他交換機(jī)——這極大地增加了所支持的網(wǎng)絡(luò)拓?fù)涞姆N類和復(fù)雜性。 ?
? 即使只有兩層交換機(jī),這也足以實(shí)現(xiàn)非樹狀拓?fù)浣Y(jié)構(gòu),例如環(huán)形、網(wǎng)狀結(jié)構(gòu)和其他結(jié)構(gòu)設(shè)置。并且各個(gè)節(jié)點(diǎn)可以是主機(jī)或設(shè)備,對類型沒有任何限制。 ?
? 同時(shí),對于真正奇特的設(shè)置,CXL 3.0 甚至可以支持主干/葉架構(gòu),其中流量通過頂級(jí)主干節(jié)點(diǎn)路由,其唯一工作是將流量進(jìn)一步路由回包含實(shí)際主機(jī)的低級(jí)(葉)節(jié)點(diǎn)/設(shè)備。 ?
? 最后,所有這些新的內(nèi)存和拓?fù)?結(jié)構(gòu)功能都可以在 CXL 聯(lián)盟所稱的全球結(jié)構(gòu)附加內(nèi)存 (GFAM) 中一起使用。簡而言之,GFAM 通過進(jìn)一步分解來自給定主機(jī)的內(nèi)存,將 CXL 的內(nèi)存擴(kuò)展板(Type-3)理念提升到了一個(gè)新的水平。在這方面,GFAM 設(shè)備在功能上是它自己的共享內(nèi)存池,主機(jī)和設(shè)備可以根據(jù)需要訪問它。GFAM 設(shè)備可以同時(shí)包含易失性和非易失性存儲(chǔ)器,例如 DRAM 和閃存。 ?
? 反過來,GFAM 將使 CXL 能夠有效地支持大型多節(jié)點(diǎn)設(shè)置。正如 Consortium 在他們的一個(gè)示例中使用的那樣,GFAM 允許 CXL 3.0 為在 CXL 連接的機(jī)器集群上實(shí)施 MapReduce 提供必要的性能和效率。當(dāng)然,MapReduce 是一種非常流行的用于加速器的算法,因此擴(kuò)展 CXL 以更好地處理集群加速器常見的工作負(fù)載是標(biāo)準(zhǔn)的下一步明顯(并且可以說是必要的)。盡管它確實(shí)模糊了 CXL 等本地互連的結(jié)束位置和 InfiniBand 等網(wǎng)絡(luò)互連的開始位置之間的界限。 ? 最終,最大的區(qū)別可能是支持的節(jié)點(diǎn)數(shù)量。CXL 的尋址機(jī)制,聯(lián)盟稱之為基于端口的路由 (PBR),最多支持 2^ 12(4096) 個(gè)設(shè)備。因此,CXL 設(shè)置只能擴(kuò)展至此,尤其是當(dāng)加速器、附加內(nèi)存和其他設(shè)備迅速占用端口時(shí)。 ? 總結(jié)一下,完整的 CXL 3.0 標(biāo)準(zhǔn)將于今天,即 FMS 2022 的第一天向公眾發(fā)布。官方上,該聯(lián)盟沒有提供任何關(guān)于何時(shí)期望 CXL 3.0 出現(xiàn)在設(shè)備中的指導(dǎo)——這取決于設(shè)備制造商- 但有理由說它不會(huì)馬上。隨著 CXL 1.1 主機(jī)剛剛交付——更不用說 CXL 2.0 主機(jī)——CXL 的實(shí)際產(chǎn)品化比標(biāo)準(zhǔn)落后幾年,這對于這些大型行業(yè)互連標(biāo)準(zhǔn)來說是典型的。 ?
? ?
編輯:黃飛
?
評論
查看更多