品
比較 FPGA 加速卡的 DDR4 和 DDR5 記憶體頻寬
摘要:DDR5 模組在與 DDR4 相同的佔用空間內提供更高的頻寬
但是,GDDR6,HBM和HBM2e提供了更高數量級的頻寬。
2021 年推出, DDR5 SDRAM 帶來許多性能 增強功能,並將在 FPGA 卡上提供, 但它到底快了多少?它與 HBM2e 和 GDDR6 等其他記憶體類型相比如何?
雙倍速度?
比較DDR5和DDR4的簡單方法是說它的頻寬是兩倍。但是,如此寬泛的陳述並不能涵蓋現實世界的各種因素,包括模組速度和系統中的模組數量(例如,四個 DDR4 模組可以提供與兩個 DDR5 DIMM 相似的性能)。為了更好地比較這些DRAM技術,我們將首先研究使DDR5具有理論最大頻寬性能的潛在因素。然後,我們將看到這如何轉化為幾個BittWare FPGA加速器卡的系統級性能。我們還將與GRRD6和HBM的高端記憶體類型進行比較,看看它們是否仍然比標準DDR記憶體具有顯著優勢。
計算速度
讓我們首先看看如何在DIMM級別計算頻寬。在五代 DDR 中,模組性能通常以 MT/s(每秒兆傳輸)或 GB/s(每秒千兆位元組)表示。時鐘速率是數據傳輸速率的一半,這就是DDR首字母縮略詞中「雙倍數據速率」的來源。這個比例在DDR5中沒有改變。
變化的是可用的傳送速率(MT/s 或 GB/s)顯著提高。今天的 DDR4 已經達到了 3,200MT/s (@ 1.6GHz 時鐘速率) 的速度;模組通常用特定的模組速度來表示,所以這將是 DDR4-3200。但是 f或 DDR5,已經有適合 FPGA 連接 SDRAM 的 DDR5-5600 選項——即 5,600 MT/s (@ 2.8 GHz)。
隨著時間的流逝,這種速度優勢將進一步增長,DDR5 規範支持高達 8,400 MT/s (@ 4.2 GHz)!但就今天而言,我們的比較使用了針對 FPGA 卡的 DDR5-5600 模組。
雙通道與單通道
我們注意到DDR中的“D”表示時鐘是數據速率的一半 - DDR5沒有改變。 每個模組的通道數量 發生了顯著變化,因為 DDR5 DIMM 現在是雙通道的。這些通道具有較小的總線寬度,這通常會抵消您在這裡期望的原始頻寬優勢。具體來說,對於DDR5,每個模組有兩個40位通道,其中8位用於ECC。因此,在模組級別,與DDR4的72位單通道(包括ECC的8位)相比,總共為80位。
檢視圖表以瞭解它在模組等級的佈局:
因此,對於 80 位而不是 72 位,如果使用者將這些 ECC 位轉換為「常規」數據位,DDR5 確實略有優勢。如果您不將 ECC 用於常規數據,那麼兩者本質上是相同的:64 位單通道或 64 位分佈在兩個通道上。
對於下面的比較,我們假設對通道使用較大的位,使DDR5略有優勢(80位對模組級別的72位)。 我們應該注意,在DDR5端有兩個通道還有一個優勢,因為可以更有效地訪問記憶體,這可能有利於延遲。
DDR5 的更多優勢
雖然我們在本文中沒有介紹它們,但除了頻寬之外,DDR5 還有其他優勢。 對於電源,DDR5 DIMM 在 DIMM 模組上具有電源管理積體電路,而不需要在卡上實現電源管理。DDR5 需要比 DDR4 更低的電壓(1.1V 與 1.2V),這有助於增加以更高速度運行所需的功率。
案例研究 – 大型表查找
一些重要的網路 應用 需要 對 通過 FPGA 的 每個 數據包 進行 表查找 和更新。對於小型表,程式師可以使用FPGA內部的低延遲靜態記憶體。但是,當表大小超出FPGA的容量時,程式師需要利用FPGA的外部記憶體。這可能會帶來重大的性能挑戰。這也為像BittWare這樣的卡供應商提供了一個在市場上脫穎而出的機會。這方面的一個例子是BittWare在我們許多基於AMD FPGA的產品中對QDR-II+靜態外部記憶體的獨特支援。此功能為希望以大約 10 GbE 數據包速率處理數據包的客戶贏得了幾項關鍵設計勝利。

但是,隨著數據包速率的提高,訪問速率和表大小都會增加。當今 100+ GbE 速率的解決方案是提供具有許多通道的動態記憶體。我們需要的通道比 DDR4 和 DDR5 之間的簡單通道數翻倍要多得多。這就是為什麼我們許多最新的FPGA卡產品提供GDDR6或HBM2e記憶體的原因。
所有動態記憶體技術、DDR4/5、GDDR 和 HBM 都提供大致相同的內核訪問延遲。增加通道計數可減少排隊延遲造成的延遲。許多通道還允許製作表查找和更新演算法來編排並行記憶體訪問。這可以使用深度管道以高訪問速率創建確定性的表查找延遲。
FPGA 加速卡比較
現在讓我們從模組級別轉到真正重要的地方:系統級別(對於帶記憶體的加速器,則為卡級別)。同樣重要的是要考慮插槽數量(DIMM 插槽或謹慎焊接記憶體組)和支援的速度會對性能產生重大影響。
為了進行比較,我們選擇了三塊FPGA板,總共有四種配置(一張卡我們有兩種配置來比較DDR4-2400和DDR4-3200)。獲取頻寬相對簡單,但我們認為,即使達到這個理論上的最大值,提供系統頻寬也可以很好地了解什麼是適合您應用的最佳選擇。
比較表
卡 | 記憶體類型 | 總通道數 + 寬度 | 總記憶體 | 模組速度 | 時鐘 | 總頻寬 1 |
---|---|---|---|---|---|---|
520N-MX | 2 個 DDR4-2400 記憶體 | 2x/72位 | 32 GB (2x 16 GB) | 2,400 噸/秒 2.4 千兆位元組/秒 | 1.2千兆赫 | 19.2 千兆位元組/秒 |
IA-840F | 2 個記憶體 DDR4-2400 + 2 個離散 DDR4-2400 | 4x/72位 | 128 GB (4x 32 GB) | 2,400 噸/秒 2.4 千兆位元組/秒 | 1.2千兆赫 | 38.4 千兆位元組/秒 |
IA-840F | 2 個 DDR4-3200 + 記憶體 2 個離散式 DDR4-3200 | 4x/72位 | 64GB (4x 16 GB) | 3,200 噸/秒 3.2 千兆位元組/秒 | 1.6千兆赫 | 51.2 千兆位元組/秒 |
FPGA 卡 | 2 個 DDR5-5600 記憶體 | 4x/40 位 | 128 GB (2x 64 GB) | 5,600 噸/秒 5.6 千兆位元組/秒 | 2.8千兆赫 | 44.8 千兆位元組/秒 |
1 總頻寬的計算公式為:(時鐘速率)x(總線寬度)x(#通道数)
對於頻寬較低的 520N-MX,兩個 DDR4-2400 模組提供 19.2 GB/s 的總理論頻寬。但跳到最後一行,只有兩個 DDR5 DIMM 的 FPGA 卡可提供兩倍以上的頻寬:44.8 GB/s!這是在支援 DDR5-5600 模組的卡上。因此,對於相同數量的 DIMM,DDR5 確實可以提供比 DDR4 兩倍的單個模組性能。
但是,現在查看圖表(IA-840f 卡)中間的兩條線,其中我們顯示了兩種配置。一個有DDR4-2400(就像520N-MX)和另一個DDR4-3200。兩種配置都包括兩個 DIMM 和 兩個焊接的分立式插槽,其配置類似於 DIMM,提供相當於四個 DIMM 的板級粗略值。
結果呢?雖然 2,400 MT/s 記憶體仍然比 DDR4 慢,但移動到 3,200 MT/s 實際上可提供 51.2 Gb/s,頻寬略高於 DDR5。當然,這是使用今天的DDR5速度,最終將被更高頻寬的模組所超越。此外,DDR5 速度更快,每個模組支援更大的容量,您可以節省物理空間(機械和熱氣流方面),這可能是具有更大 FPGA 的 PCIe 卡的設計因素。
高頻寬記憶體:GDDR6 和 HBM
記憶體頻寬比較
如您所見,雖然 DDR5 比 DDR4 具有顯著的優勢(並且隨著速度的加快而增長),但與 GDDR6、HBM 和 HBM2e 相比,仍然存在一個數量級的差異。
超高速 HBM2e(HBM2 的更新版)通過 FPGA 在封裝內實現。IA-860m 卡的英特爾 Agilex 7 M 系列 FPGA(總共 32GB)上有兩個 16GB 記憶體堆棧,總峰值頻寬高達 820GBps。這比配備 DDR5 的 FPGA 卡高出 18 倍 !
雖然它沒有HBM2e那麼快,但GDDR6和HBM的性能仍然比DDR5高出10倍。GDDR6 支援每個組的兩個獨立的 16 位通道,因此具有 8 組 GDDR6(例如帶有 Achronix FPGA 的 BittWare 的 S7t-VG6)的卡具有高達 448GB/s 的頻寬。我們的XUP-VVH獲得的是HBM記憶體,這要歸功於AMD Virtex UltraScale+ VU-37P設備。
結論
也許最有幫助的結論是注意BittWareFPGA卡產品群組中可用的各種選項。DDR5 是一項改進,將成為獲得大容量、快速記憶體的絕佳新方法。但不要排除DDR4 - 它是一種更成熟的技術,廣泛可用,並且與DDR5相比仍然可以保持自己的地位。對於真正的記憶體密集型應用程式,請考慮 HBM2e 和 GDDR6 等超高速選項。