高性能GPU服務器基礎知識(上篇)
在大規模模型訓練的領域中,構建高性能GPU服務器的基礎架構通常依託於由單個服務器搭載8塊GPU單元所組成的集群系統。這些服務器內部配置了如A100、A800、H100或H800等高性能GPU型號,並且隨着技術發展,未來可能還會整合{4, 8} L40S等新型號GPU。下圖展示了一個典型的配備了8塊A100 GPU的服務器內部GPU計算硬件連接拓撲結構示意圖。
本文將依據上述圖表,對GPU計算涉及的核心概念與相關術語進行深入剖析和解讀。
PCIe交換機芯片
在高性能GPU計算的領域內,關鍵組件如CPU、內存模塊、NVMe存儲設備、GPU以及網絡適配器等通過PCIe(外設部件互連標準)總線或專門設計的PCIe交換機芯片實現高效順暢的連接。歷經五代技術革新,目前最新的Gen5版本確保了設備間極為高效的互連性能。這一持續演進充分彰顯了PCIe在構建高性能計算系統中的核心地位,顯著提升了數據傳輸速度,並有力地促進了現代計算集群中各互聯設備間的無縫協同工作。
NVLink概述
NVLink定義
NVLink是英偉達(NVIDIA)開發並推出的一種總線及其通信協議。NVLink採用點對點結構、串列傳輸,用於中央處理器(CPU)與圖形處理器(GPU)之間的連接,也可用於多個圖形處理器之間的相互連接。與PCI Express不同,一個設備可以包含多個NVLink,並且設備之間採用網格網絡而非中心集線器方式進行通信。該協議於2014年3月首次發布,採用專有的高速信號互連技術(NVHS)。
該技術支持同一節點上GPU之間的全互聯,並經過多代演進,提高了高性能計算應用中的雙向帶寬性能。
NVLink的發展歷程:從NVLink 1.0到NVLink 4.0
NVLink技術在高性能GPU服務器中的演進如下圖所示:
NVLink 1.0
-
連接方式:採用4通道連接。
-
總帶寬:實現高達160 GB/s的雙向總帶寬。
-
用途:主要用於加速GPU之間的數據傳輸,提升協同計算性能。
NVLink 2.0
-
連接方式:基於6通道連接。
-
總帶寬:將雙向總帶寬提升至300 GB/s。
-
性能提升:提供更高的數據傳輸速率,改善GPU間通信效率。
NVLink 3.0
-
連接方式:採用12通道連接。
-
總帶寬:達到雙向總帶寬600 GB/s。
-
新增特性:引入新技術和協議,提高通信帶寬和效率。
NVLink 4.0
-
連接方式:使用18通道連接。
-
總帶寬:進一步增加至雙向總帶寬900 GB/s。
-
性能改進:通過增加通道數量,NVLink 4.0能更好地滿足高性能計算應用對更大帶寬的需求。
NVLink 1.0、2.0、3.0和4.0之間的關鍵區別主要在於連接通道數目的增加、所支持的總帶寬以及由此帶來的性能改進。隨着版本迭代,NVLink不斷優化GPU間的數據傳輸能力,以適應日益複雜且要求嚴苛的應用場景。
NVSwitch
NVSwitch是NVIDIA專為滿足高性能計算應用需求而研發的一款交換芯片,其核心作用在於實現同一主機內部多顆GPU之間的高速、低延遲通信。
下圖呈現了一臺典型配置8塊A100 GPU的主機硬件連接拓撲結構。
下圖展示的是浪潮NF5488A5 NVIDIA HGX A100 8 GPU組裝側視圖。在該圖中,我們可以清楚地看到,在右側六個大型散熱器下方隱蔽着一塊NVSwitch芯片,它緊密圍繞並服務於周圍的八片A100 GPU,以確保GPU間的高效數據傳輸。
NVLink交換機
NVLink交換機是一種由NVIDIA專為在分布式計算環境中的不同主機間實現GPU設備間高性能通信而設計製造的獨立交換設備。不同於集成於單個主機內部GPU模塊上的NVSwitch,NVLink交換機旨在解決跨主機連接問題。可能有人會混淆NVLink交換機和NVSwitch的概念,但實際上早期提及的“NVLink交換機”是指安裝在GPU模塊上的切換芯片。直至2022年,NVIDIA將此芯片技術發展為一款獨立型交換機產品,並正式命名為NVLink交換機。
HBM(高帶寬內存)
傳統上,GPU內存與常見的DDR(雙倍數據速率)內存相似,通過物理插槽插入主板並通過PCIe接口與CPU或GPU進行連接。然而,這種配置在PCIe總線中造成了帶寬瓶頸,其中Gen4版本提供64GB/s的帶寬,Gen5版本則將其提升至128GB/s。
為了突破這一限制,包括但不限於NVIDIA在內的多家GPU製造商採取了創新手段,即將多個DDR芯片堆疊整合,形成了所謂的高帶寬內存(HBM)。例如,在探討H100時所展現的設計,GPU直接與其搭載的HBM內存相連,無需再經過PCIe交換芯片,從而極大地提高了數據傳輸速度,理論上可實現顯著的數量級性能提升。因此,“高帶寬內存”(HBM)這一術語精準地描述了這種先進的內存架構。
HBM的發展歷程:從HBM1到HBM3e
帶寬單位解析
在大規模GPU計算訓練領域,系統性能與數據傳輸速度密切相關,涉及到的關鍵通道包括PCIe帶寬、內存帶寬、NVLink帶寬、HBM帶寬以及網絡帶寬等。在衡量這些不同的數據傳輸速率時,需注意使用的帶寬單位有所不同。
在網絡通信場景下,數據速率通常以每秒比特數(bit/s)表示,且為了區分發送(TX)和接收(RX),常採用單向傳輸速率來衡量。而在諸如PCIe、內存、NVLink及HBM等其他硬件組件中,帶寬指標則通常使用每秒字節數(Byte/s)或每秒事務數(T/s)來衡量,並且這些測量值一般代表雙向總的帶寬容量,涵蓋了上行和下行兩個方向的數據流。
因此,在比較評估不同組件之間的帶寬時,準確識別並轉換相應的帶寬單位至關重要,這有助於我們全面理解影響大規模GPU訓練性能的數據傳輸能力。
相關文章推薦
郵箱地址
-
Cat5e、Cat6、Cat6a和Cat7網線有什麼區別?哪個更好?
2020年08月21日
-
一文帶你了解SFP、SFP+、SFP28、QSFP+和QSFP28之間的區別
2024年04月13日
-
OM1、OM2、OM3、OM4和OM5多模光纖有什麼區別?
2021年11月24日
-
SFP端口是什麼?有什麼作用?可以接RJ45嗎?
2020年09月15日
-
PCIe卡知識掃盲:你想了解的都在這裡
2020年03月24日