三種GPU伺服器PCIe架構:Single Root、Dual Root、Direct Attached

了解三種 PCIe 架構,以便挑選適合的 GPU伺服器

與傳統的 CPU 伺服器相比,GPU 已成為 AI 和 HPC 應用程式中高效能運算的實際解決方案。這些系統可以執行廣泛的應用程式,而且利用 GPU 的應用程式在性能上的提升已被廣泛記錄。時至今日,仍在不斷開發新的技術和應用程式來利用和優化日益強大的 GPU 性能。

雖然專注於 GPU 的伺服器包含Single CPU或Dual CPU,以及多達 10 個 PCIe GPU,但系統的架構方式會影響應用程式的速度和伺服器的靈活性。目前 GPU 伺服器有三種PCIe架構,可以使系統針對各種工作負載得到更優化。在選擇 GPU 伺服器時,CPU 與 GPU 之間的溝通頻寬至關重要。

PCIe GPU 存取選項

GPU 伺服器專為需要大量運算的應用程式而設計,例如分子動力學、AI 和深度學習以及各種 HPC 工作負載。雖然 1:1 的 CPU 對 GPU 比例在桌上型電腦、工作站和伺服器中很常見,但由於高運算工作負載比較重,需要使用多GPU配置的伺服器較為合適。

GPU 伺服器有兩種主要架構:

  • 基於 PCIe 的伺服器(PCIe Based Servers): 具有多達 8 個或有時 10 個可用於 GPU 的 PCIe 插槽的 GPU 伺服器。
  • 基於 SXM/OAM 的伺服器(SXM/OAM Based Servers): GPU 安裝並插接在載板上,並且只與 CPU 有 1 個 PCIe 連接的 GPU 伺服器。

GPU 伺服器也有Dual CPU配置的選項。兩個 CPU 通過高速通訊路徑進行溝通,Intel 伺服器稱之為 UPI,AMD 伺服器稱之為 xGMI。

不同的系統架構下,PCIe 如何連接

目前PCIe 伺服器,有 3 種不同的系統架構,專為各種工作負載而設計:

  1. Single Root (單根)
  2. Dual Root (雙根)
  3. Direct Attached (直通)

Single Root (單根架構) : 1 個 CPU,2 個 PCIe 交換器

Single Root非常適合停留在單個 GPU 上但需要存取多個 GPU 的應用程式。Single Root系統(如果有兩個 CPU)會專門用其中一個 CPU 來管理所有與 GPU 的通訊。

如圖所示,用來與 GPU 通訊的 CPU 使用一個名為 PLX 的 PCI 交換器。每個 PLX 交換器通過 2 條 PCIe x16 通道連接到 CPU,然後可以與多達 4 個或 5 個 GPU 通訊,在單個伺服器中最多可達 10 個 GPU。

由於所有運算都連接到單個 CPU,Single Root更簡化、具有較低的延遲,並適用於大多數應用程式。Single Root系統為大多數計算以 GPU 為中心進行點對點通訊(peer-to-peer communication)並非至關重要的應用而設計。應用程式範例包括 AMBER 分子動力學和其他模擬類型的工作負載。

Dual Root (雙根架構) :2 個 CPU,2 個 PCIe 交換器

Dual Root設置通過 PLX 交換器將 CPU 連接到多個 GPU 和附加卡(Add-on Cards, AOCs)。連接到 PLX 的 GPU 分佈不一定需要相等;分配給系統的工作負載可能不容易在兩個 CPU之間進行分配。

每個 CPU 都可以通過 UPI/xGMI 相互通訊,因此連接的 PCIe 設備的組合可以很靈活(一個 CPU 用於儲存和網路,一個 CPU 用於運算)。然而,在大多數伺服器配置中,均勻分配硬體是很常見的。

在典型的配置中,每個 CPU 通過其專用的 PLX 交換器連接到 4 個 GPU、2 個 AOC 和 4 個 NVMe 儲存裝置,這是一個適用於 Omniverse 環境工作負載的典型配置。AOC 可以是額外的儲存、高速網路卡等。

Dual Root伺服器對於需要在 CPU 和 GPU 處理能力之間取得平衡的應用程序、尤其是在工作負載之間的數據共享與通訊至關重要時是有利的。在此設置中,工作負載可以分配給每個 CPU,允許兩個處理器都利用其各自的運算能力,然後在需要時促進它們之間的通訊。應用程式範例包括深度學習訓練、高效能運算(HPC)以及數據共享和 CPU 與 GPU 之間通訊效率至關重要的工作負載。

Direct Attached (直通架構) :2 個 CPU,沒有 PCIe 交換器

在直通架構中,每個 CPU 可以直接通過PCIe存取伺服器中最多四個 GPU,在一個雙CPU的伺服器中擁有 8 個 GPU,而無需使用 PLX 交換器。

此種配置的優勢在於沒有 PLX 交換器。在Single Root和Dual Root中,PLX 交換器充當 PCIe 通道插槽的流量控制器,通過整合和重新分配來自 PCIe 設備的數據流量,這些插槽未直接佈線在主機板上。這減少了使用的 PCIe 通道數量,同時確保了最佳的頻寬以實現最佳性能。然而,這有一個需要考量的地方;使用 PLX 會增加數據通過它時的延遲,就像一個中間人,而直通架構中缺乏 PLX,由於 GPU 與 CPU 的直接連接,進而減少了延遲。

在這樣一個 8 GPU 的設置中,我們總共為 GPU 專門使用了 128 條 PCIe 5.0 通道。直通架構通常用於大多數 HPC(高效能運算)工作負載,在這些工作負載中,多個應用程式可以並行執行,或者單個應用程式可以劃分為多個較小的工作。在此設置中,每個 CPU 都有平等的存取權限,並且在 CPU 上執行的每個應用程式都有專用的一組 GPU 資源,同時減少了延遲和複雜性。

總結:如何選擇伺服器

架構

主要特點

推薦工作應用

單根 (Single Root)

1 個 CPU 管理所有 GPU 通訊,通過 PLX 交換器連接。結構簡化,延遲較低。

一般用途工作負載: 適用於廣泛的通用 GPU 加速工作負載,例如科學模擬、數據分析和不需要高度 GPU 對 GPU 通訊的機器學習訓練。網路伺服器和虛擬化: 可用於網路託管和虛擬化任務,其中每個虛擬機 (VM) 或容器不需要直接的 GPU 通訊。

雙根 (Dual Root)

2 個 CPU,每個通過 PLX 交換器連接到一組 GPU 和 AOC。CPU 之間可通訊,有助於數據共享。

高效能運算 (HPC) 通常首選用於需要高度 GPU 對 GPU 通訊的 HPC 工作負載,例如涉及複雜模型或大規模科學運算的模擬。深度學習和 AI 訓練: 在多個 GPU 上訓練深度學習模型時,Dual Root伺服器可以通過實現 GPU 之間更快的數據交換來提供更好的性能。

直通 (Direct Attached)

2 個 CPU,每個直接連接到一組 GPU,沒有 PLX 交換器。消除中間環節,延遲最低。

圖形渲染和影片編輯: 非常適合圖形密集型應用程式,如 3D 渲染、影片編輯和電腦輔助設計 (CAD)。這些任務受益於直接的 GPU 存取,而無需 GPU 間通訊。遠端桌面虛擬化: 可用於遠端桌面虛擬化情境,其中每個使用者或會話都需要專門的 GPU 資源來處理遊戲或圖形設計等任務。

原始文章出處:https://www.exxactcorp.com/blog/hpc/single-root-dual-root-direct-attached

error: 內容受保護!