當前位置: 華文世界 > 數碼

24G視訊記憶體的顯卡好稀少?我可以用記憶體當快閃記憶體嗎?

2024-07-07數碼

AI對GPU巨大的視訊記憶體需求&昂貴的顯卡

最近想玩玩AI,文生圖的速度,不僅僅取決於顯卡核心,還對視訊記憶體容量有巨大的要求。

想要出圖快,不爆視訊記憶體,8G根本不夠,12-16G剛剛能接受,24G才是完美配置。

除了魔改的2080Ti,能買到的就只有3090,3090Ti,4090,7900XT。這個價格都是超貴的!!!

你選好一點的cpu,支持個128GB記憶體是沒問題的。現在的PCIE5.0的固態硬碟也推出了,最大讀寫15GB/12GB。 由此我不由生出一個想法:能不能把記憶體,或者固態硬碟當作視訊記憶體用呢?

微軟的directstorage,只能為遊戲服務,他的思想是顯卡直接讀取ssd的資料,和視訊記憶體沒太大關系。

把記憶體當視訊記憶體?

那麽,我的想法有沒有可能實作呢?我一致認為是不可能的,直到我看到了一條訊息

在南韓科學技術院的支持下,Panmnesia 公司最新展示了一項新技術,可以讓 GPU 透過 Compute Express Link(CXL)介面直接存取系統儲存, 也意味著 GPU 可以使用系統儲存充當其視訊記憶體。

該公司將這種 PCIe 附加視訊記憶體方案命名為 CXL GPU Image, 延遲時間在 100 納秒以下,明顯快於傳統的固態硬碟。

CXL 是一種在 PCIe 鏈路上工作的協定,但該技術必須得到 ASIC 及其子系統的認可。由於 GPU 中沒有支持 DRAM 和速 SSD 端點的 CXL 邏輯結構和子系統,因此無法簡單地將 CXL 控制器添加到技術堆疊中。

Panmnesia 為此開發了一系列支持所有關鍵 CXL 協定的硬件層,整合到一個統一的控制器中,實作了這項成果。

關鍵的CLX介面

而其中提到的CXL介面,我搜尋了一下,有以下作用

CXL簡介:什麽是 Compute Express Link?

CXL是一個開放標準的行業支持的緩存一致性互連,用於處理器、記憶體擴充套件和加速器。從本質上講,CXL 技術在 CPU 記憶體空間和連線器材上的記憶體之間保持記憶體一致性。這支持資源共享(或池化)以獲得更高的效能,降低軟件堆疊的復雜性,並降低整體系統成本。CXL 聯盟已經確定了將采用新互連的三類主要器材:

類別1器材:智能 NIC 等加速器通常缺少本地記憶體。透過 CXL,這些器材可以與主機處理器的 DDR 記憶體進行通訊。

類別2器材:GPU、ASIC 和 FPGA 都配備了 DDR 或 HBM 記憶體,並且可以使用 CXL 使主機處理器的記憶體在本地可供加速器使用,並使加速器的記憶體在本地可供 CPU 使用。它們還共同位於同一個緩存一致域中,有助於提升異構工作負載。

類別 3 器材:記憶體器材可以透過 CXL 連線,為主機處理器提供額外的頻寬和容量。記憶體的類別獨立於主機的主記憶體

類別2器材:CXL.io + CXL.cache + CXL.memory

看來CXL介面,可以讓視訊記憶體和記憶體統一池子化,對顯卡透明提供統一的記憶體空間

如果真的可以,那就太好了。可是有朋友要問,主機板上哪來的CXL介面?現在顯卡都插在PCIE上面。

我又找了下,得到以下答案

Compute Express Link 與 PCIe:這兩者有什麽關系?

CXL 建立在PCIe的物理和電氣介面之上,其協定建立了一致性、簡化了軟件堆疊並保持與現有標準的相容性。具體來說,CXL 利用 PCIe 5 功能,允許備用協定使用物理 PCIe 層。當支持 CXL 的加速器插入 x16 插槽時,器材會以每秒 2.5 千兆傳輸 (GT/s) 的預設 PCI Express 1.0 傳輸速率與主機處理器的埠進行協商。只有雙方都支持 CXL,CXL 交易協定才會被啟用。否則,它們作為 PCIe 器材執行。

CXL 1.1 和 2.0 使用 PCIe 5.0 實體層,允許透過 16 通道鏈路在每個方向上以 32 GT/s 或高達 64 GB/s 的速度傳輸數據。

CXL 3.0 使用 PCIe 6.0 實體層將數據傳輸擴充套件到 64 GT/s,支持透過 x16 鏈路進行高達 128 GB/s 的雙向通訊。

原來,CXL就是利用PCIE的物理和電氣介面,對使用者呈現的就是PCIE,只是協定層是相容的。但是要主機板的PCIE介面支持CXL協定,並且擴充套件卡如顯卡也支持CXL協定。這樣就完整啟用了CXL定義的功能,可以把記憶體當視訊記憶體用啦。

只是,這個介面最低要求PCIe5.0 *16 ,等到普及,看來還需要幾年!