什麼是 RDMA?
RDMA(Remote Direct Memory Access)讓一台機器透過網路直接讀取或寫入另一台機器的記憶體,繞過雙方的 CPU 與作業系統。 網路介面卡直接在兩端的應用程式記憶體之間搬移位元組,因此延遲極低、CPU 額外負擔趨近於零。在乙太網路上,RoCEv2 承載 RDMA 使其能被路由,而由於 RDMA 假設沒有封包被丟棄,因此它運行在無損 fabric 上。
零複製、CPU 繞過,以及為何這正是重點
一般的網路傳輸會透過核心複製資料,並在兩端都仰賴 CPU。RDMA 移除了兩者。介面卡直接從傳送端的應用程式記憶體讀取,並直接寫入接收端的應用程式記憶體,資料路徑上不經過 CPU。這正是提供 RDMA 極低延遲、極高吞吐量與幾乎零 CPU 成本這一組合的關鍵,也是 RDMA 成為 GPU 對 GPU 通訊標準的原因。
- 零拷貝: 位元組直接在兩端的應用程式記憶體之間搬移,永不經由中介核心緩衝暫存。
- 核心繞過: 是網路介面卡、而非作業系統驅動傳輸,因此 CPU 不在資料路徑上。
- 趨近於零的負擔: CPU 被釋放去運行工作負載,而非搬移封包,這在 GPU 規模下具有決定性。
RoCEv2 如何在乙太網路上承載 RDMA
RoCEv2(RDMA over Converged Ethernet,第 2 版)將 RDMA 封裝於 UDP 與 IP 中,使用目的 UDP 埠 4791,使其能跨標準 Layer 3 乙太網路 fabric 路由,無需另建網路。RDMA 操作仍以介面卡對介面卡運行,具有相同的零複製行為;RoCEv2 只是賦予它一條可路由的乙太網路路徑。這正是讓多廠商乙太網路 fabric 得以在 GPU 叢集上取代 InfiniBand 的關鍵。
為何 AI 集合作業依賴 RDMA,以及為何 fabric 必須無損
AI 訓練運行 AllReduce 這類集合作業:每一步之後,所有 GPU 的梯度會在全部 GPU 之間合併,接著全部等待該交換完成,才進入下一步。資料量龐大而時程緊湊,因此 RDMA 讓每次交換保持快速並卸離 CPU。由於單一遺失的封包就會迫使進行恢復,使尾端延遲飆升並可能使整個集合作業停滯,乙太網路上的 RDMA 通常運行在無損 fabric 上。
- 集合作業會阻擋每個 GPU,直到交換完成,因此 較低的延遲縮短了步驟 也就是整個叢集正在等待的那一步。
- RDMA 讓交換 卸離 CPU 且免於複製,跨越數百萬個步驟累積後,這是對總訓練時間的直接槓桿。
- OcNOS-DC 提供不丟包的 fabric,搭配 PFC、ECN 與動態負載平衡 於 Broadcom Tomahawk 5 上,讓資料流遠離熱點連結。
什麼是 RDMA,解答如下
什麼是RDMA?
RoCEv2 如何在乙太網路上承載 RDMA?
為何零複製與 CPU 繞過對 AI 重要?
為何 RDMA 需要無損 fabric?
要設計 RDMA fabric 嗎?讓我們把它建構為無損
告訴我們工作負載與 GPU 規模,IP Infusion 工程師便會在運行 OcNOS-DC 的開放硬體上,與您一起走過 RoCEv2 與無損 fabric 設計。
以 OcNOS 設計整套 AI 網狀架構
從商業論證到埠數計算,無論您的建置進行到哪個階段,都能從此接續。
深入了解,隨身帶走。
兩份簡短的技術下載,比本頁更深入:完整的 OcNOS-DC 資料表,以及無損 800G AI fabric 架構。
OcNOS 800G 無損 AI Fabric
表單簡短。提交後您的 PDF 將立即在新標籤頁中打開。
✓ 正在新標籤頁中打開您的 PDF……
如果未能自動打開,請使用下方連結。