在 2022 NVIDIA GTC 主題演講中, NVIDIA 首席執(zhí)行官 Jensen Huang 介紹了新的 NVIDIA H100 張量核心 GPU 基于新的 NVIDIA 漏斗 GPU 架構(gòu)。這篇文章讓你看看新的 H100 GPU ,并介紹了NVIDIA Hopper 架構(gòu) GPU 的重要新功能。
NVIDIA H100 張量核心 GPU 介紹
NVIDIA H100 張量核心 GPU 是我們?cè)O(shè)計(jì)的第九代數(shù)據(jù)中心 GPU ,用于在前一代 NVIDIA A100 張量核心 GPU 上為大規(guī)模 AI 和 HPC 提供數(shù)量級(jí)性能跳躍。 H100 延續(xù)了 A100 的主要設(shè)計(jì)重點(diǎn),提高了人工智能和 HPC 工作負(fù)載的可擴(kuò)展性,大大提高了架構(gòu)效率。
對(duì)于當(dāng)今的主流 AI 和 HPC 機(jī)型,配備 InfiniBand interconnect 的 H100 的性能是 A100 的 30 倍。新的 NVLink 交換系統(tǒng)互連針對(duì)一些最大且最具挑戰(zhàn)性的計(jì)算工作負(fù)載,這些工作負(fù)載需要跨多個(gè) GPU 加速節(jié)點(diǎn)的模型并行性來(lái)適應(yīng)。這些工作負(fù)載帶來(lái)了新一代的性能飛躍,在某些情況下, InfiniBand 的性能比 H100 再次提高了三倍。
圖 2 。 H100 實(shí)現(xiàn)了下一代人工智能和高性能計(jì)算的突破
所有性能數(shù)據(jù)都是初步的,基于當(dāng)前的預(yù)期,并可能會(huì)隨著運(yùn)輸產(chǎn)品的變化而變化。 A100 集群: HDR IB 網(wǎng)絡(luò)。 H100 集群: NDR IB 網(wǎng)絡(luò),帶有 NVLink 交換系統(tǒng)(如圖所示) GPU :氣候建模 1K , LQCD 1K ,基因組學(xué) 8 , 3D-FFT 256 , MT-NLG 32 (批次大?。?A100 為 4 , 1 秒 H100 為 60 , A100 為 8 , 1.5 和 2 秒 H100 為 64 ), MRCNN 8 (批次 32 ), GPT-3 16B 512 (批次 256 ), DLRM 128 (批次 64K ), GPT-3 16K (批次 512 ), MoE 8K (批次 512 ,每個(gè) GPU 一名專家)。
2022 年春天 GTC 宣布了新的NVIDIA Grace Hopper 超級(jí)芯片產(chǎn)品。NVIDIA Hopper H100 張量核心 GPU 將為 NVIDIA Grace Guffer-SuxCube CPU + GPU 架構(gòu),為兆字節(jié)規(guī)模加速計(jì)算而建,并在大型 AI 和 HPC 上提供 10X 更高性能。
NVIDIA Grace Hopper 超級(jí)芯片利用ARM體系結(jié)構(gòu)的靈活性來(lái)創(chuàng)建一個(gè) CPU 和服務(wù)器架構(gòu),從加速計(jì)算開(kāi)始。H100與 Nvidia Grace CPU 配對(duì),與超高速 NVIDIA 芯片到芯片互連,提供900 Gb/s的總帶寬,比PCIE GE5快7X。與當(dāng)今最快的服務(wù)器相比,這種創(chuàng)新設(shè)計(jì)提供了高達(dá)30倍的聚合帶寬,對(duì)于使用TB數(shù)據(jù)的應(yīng)用程序,其性能高達(dá)10倍。
NVIDIA H100 GPU 主要功能概述
新的 streaming multiprocessor ( SM )有許多性能和效率改進(jìn)。主要的新功能包括:
新的 第四代張量核 芯片到芯片的速度比 A100 快 6 倍,包括每 SM 加速比、額外的 SM 計(jì)數(shù)和更高的 H100 時(shí)鐘。與上一代 16 位浮點(diǎn)選項(xiàng)相比,基于每個(gè) SM , Tensor Core 在等效數(shù)據(jù)類型上的 MMA (矩陣乘法累加)計(jì)算速率是 A100 SM 的 2 倍,在使用新 FP8 數(shù)據(jù)類型時(shí)是 A100 的 4 倍。稀疏特性利用深度學(xué)習(xí)網(wǎng)絡(luò)中的細(xì)粒度結(jié)構(gòu)化稀疏性,將標(biāo)準(zhǔn)張量核心運(yùn)算的性能提高了一倍
新的 DPX Instructions 在 A100 GPU 上將動(dòng)態(tài)編程算法的速度提高了 7 倍。兩個(gè)例子包括用于基因組處理的史密斯 – 沃特曼算法,以及用于在動(dòng)態(tài)倉(cāng)庫(kù)環(huán)境中為一組機(jī)器人尋找最佳路徑的弗洛伊德 – 沃沙爾算法。
3 倍于 IEEE FP64 和 FP32 與 A100 相比,芯片間的處理速度更快,因?yàn)槊總€(gè) SM 的時(shí)鐘性能比 A100 快 2 倍,加上額外的 SM 計(jì)數(shù)和更高的 H100 時(shí)鐘。
新線程塊集群 功能 支持以比單個(gè) SM 上的單個(gè)線程塊更大的粒度對(duì)局部性進(jìn)行編程控制。這擴(kuò)展了 CUDA 編程模型,向編程層次結(jié)構(gòu)添加了另一個(gè)級(jí)別,現(xiàn)在包括線程、線程塊、線程塊集群和網(wǎng)格。集群允許多個(gè)線程塊在多個(gè) SMs 上并發(fā)運(yùn)行,以同步、協(xié)作方式獲取和交換數(shù)據(jù)。
分布式共享內(nèi)存 允許在多個(gè) SM 共享內(nèi)存塊之間進(jìn)行負(fù)載、存儲(chǔ)和原子的直接 SM-to-SM 通信。
新的 asynchronous execution 功能包括一個(gè)新的 張量記憶加速器( TMA ) 單元,它可以在全局內(nèi)存和共享內(nèi)存之間高效地傳輸大塊數(shù)據(jù)。 TMA 還支持集群中線程塊之間的異步復(fù)制。還有一個(gè)新的 異步事務(wù)屏障 用于進(jìn)行原子數(shù)據(jù)移動(dòng)和同步。
新transformer 發(fā)動(dòng)機(jī)結(jié)合使用軟件和定制的 NVIDIA Hopper Tensor 核心技術(shù),專門設(shè)計(jì)用于加速 transformer 模型訓(xùn)練和推理。 transformer 引擎智能管理并動(dòng)態(tài)選擇 FP8 和 16 位計(jì)算,自動(dòng)處理每層 FP8 和 16 位之間的重新轉(zhuǎn)換和縮放,與上一代 A100 相比,在大型語(yǔ)言模型上提供高達(dá) 9 倍的人工智能訓(xùn)練和高達(dá) 30 倍的人工智能推理加速。
HBM3 存儲(chǔ)子系統(tǒng) 的帶寬比上一代增加了近 2 倍。 H100 SXM5 GPU 是世界上第一款 GPU HBM3 內(nèi)存,提供了一流的 3 TB / s 內(nèi)存帶寬。
50MB 二級(jí)緩存體系結(jié)構(gòu) 緩存了大量模型和數(shù)據(jù)集以供重復(fù)訪問(wèn),從而減少了對(duì) HBM3 的訪問(wèn)。
第二代多實(shí)例 GPU ( MIG )技術(shù)與 A100 相比,每個(gè) GPU 實(shí)例的計(jì)算容量增加約 3 倍,內(nèi)存帶寬增加近 2 倍。 MIG level TEE 現(xiàn)在首次提供機(jī)密計(jì)算能力。最多支持七個(gè)單獨(dú)的 GPU 實(shí)例,每個(gè)實(shí)例都有專用的 NVDEC 和 NVJPG 單元。現(xiàn)在,每個(gè)實(shí)例都包含自己的一組性能監(jiān)視器,可與 NVIDIA 開(kāi)發(fā)人員工具配合使用。
新的機(jī)密計(jì)算支持 保護(hù)用戶數(shù)據(jù),抵御硬件和軟件攻擊,并在虛擬化和 MIG 環(huán)境中更好地隔離和保護(hù)虛擬機(jī)( VM )。 H100 實(shí)現(xiàn)了世界上第一個(gè)本機(jī)機(jī)密計(jì)算 GPU ,并以全 PCIe 線速率使用 CPU 擴(kuò)展了可信執(zhí)行環(huán)境( TEE )。
第四代 NVIDIA NVLink 在所有 reduce 操作中提供了 3 倍的帶寬增加,與上一代 NVLink 相比,一般帶寬增加了 50% ,多 GPU IO 的總帶寬為 900 GB / s ,是 PCIe Gen 5 帶寬的 7 倍。
Third-generation NVSwitch 技術(shù)包括駐留在節(jié)點(diǎn)內(nèi)部和外部的交換機(jī),用于連接服務(wù)器、群集和數(shù)據(jù)中心環(huán)境中的多個(gè) GPU 。節(jié)點(diǎn)內(nèi)的每個(gè) NVSwitch 提供 64 個(gè)第四代 NVLink 鏈路端口,以加速多 GPU 連接。交換機(jī)總吞吐量從上一代的 7.2 TB / s 增加到 13.6 TB / s 。新的第三代 NVSwitch 技術(shù)還為集體運(yùn)營(yíng)提供了硬件加速,多播和 NVIDIA 的網(wǎng)絡(luò)規(guī)模大幅縮減。
新的 NVLink 交換系統(tǒng) 互連技術(shù)和基于第三代 NVSwitch 技術(shù)的新的第二級(jí) NVLink 開(kāi)關(guān) 引入了地址空間隔離和保護(hù),使多達(dá) 32 個(gè)節(jié)點(diǎn)或 256 個(gè) GPU 能夠在 2:1 錐形胖樹(shù)拓?fù)渲型ㄟ^(guò) NVLink 連接。這些連接的節(jié)點(diǎn)能夠提供 57.6 TB / s 的全對(duì)全帶寬,并能提供令人難以置信的 FP8 稀疏 AI 計(jì)算的 1 exaFLOP 。
PCIe 第 5 代 提供 128 GB / s 的總帶寬(每個(gè)方向 64 GB / s ),而第 4 代 PCIe 的總帶寬為 64 GB / s (每個(gè)方向 32 GB / s )。 PCIe Gen 5 使 H100 能夠與性能最高的 x86 CPU 和 SmartNIC 或數(shù)據(jù)處理器( DPU )連接。
還包括許多其他新功能,以改進(jìn)強(qiáng)大的可擴(kuò)展性,減少延遲和開(kāi)銷,并通常簡(jiǎn)化 GPU 編程。
NVIDIA H100 GPU 深入架構(gòu)
基于新NVIDIA Hopper GPU 架構(gòu)的 Nvidia H100 GPU 具有多個(gè)創(chuàng)新:
新的第四代張量核在更廣泛的人工智能和高性能計(jì)算任務(wù)中執(zhí)行比以往更快的矩陣計(jì)算。
新的 transformer 引擎使 H100 的人工智能訓(xùn)練速度提高了 9 倍,人工智能訓(xùn)練速度提高了 30 倍。與前一代 A100 相比,大型語(yǔ)言模型的推理速度有所提高。
新的 NVLink 網(wǎng)絡(luò)互連使 GPU 能夠跨多個(gè)計(jì)算節(jié)點(diǎn)在多達(dá) 256 個(gè) GPU 之間進(jìn)行 GPU 通信。
安全 MIG 將 GPU 劃分為獨(dú)立的、大小合適的實(shí)例,以最大限度地提高較小工作負(fù)載的服務(wù)質(zhì)量( QoS )。
許多其他新的體系結(jié)構(gòu)功能使許多應(yīng)用程序的性能提高了 3 倍。
NVIDIA H100 是第一款真正的異步 GPU 。 H100 將 A100 的全局異步傳輸擴(kuò)展到所有地址空間的共享異步傳輸,并增加了對(duì)張量?jī)?nèi)存訪問(wèn)模式的支持。它使應(yīng)用程序能夠構(gòu)建端到端的異步管道,將數(shù)據(jù)移入和移出芯片,完全重疊并隱藏?cái)?shù)據(jù)移動(dòng)和計(jì)算。
現(xiàn)在,使用新的張量?jī)?nèi)存加速器管理 H100 的全部?jī)?nèi)存帶寬只需要少量 CUDA 線程,而大多數(shù)其他 CUDA 線程可以專注于通用計(jì)算,例如新一代張量核的預(yù)處理和后處理數(shù)據(jù)。
H100 將 CUDA 線程組層次結(jié)構(gòu)擴(kuò)展為一個(gè)稱為線程塊集群的新級(jí)別。集群是一組線程塊,保證可以并發(fā)調(diào)度,并支持跨多個(gè) SMs 的線程的高效協(xié)作和數(shù)據(jù)共享。集群還可以更高效地協(xié)同驅(qū)動(dòng)異步單元,如張量?jī)?nèi)存加速器和張量?jī)?nèi)核。
協(xié)調(diào)越來(lái)越多的片上加速器和不同的通用線程組需要同步。例如,使用輸出的線程和加速器必須等待產(chǎn)生輸出的線程和加速器。
NVIDIA asynchronous transaction barriers 使集群內(nèi)的通用 CUDA 線程和片上加速器能夠高效地同步,即使它們位于不同的 SMs 上。所有這些新功能使每個(gè)用戶和應(yīng)用程序都能隨時(shí)充分使用其 H100 GPU 的所有單元,使 H100 成為迄今為止功能最強(qiáng)大、可編程性最強(qiáng)、能效最高的 NVIDIA GPU 。
為 H100 GPU 供電的完整 GH100 GPU 是使用為 NVIDIA 定制的 TSMC 4N 工藝制造的,具有 800 億個(gè)晶體管,芯片尺寸為 814 毫米2,以及更高頻率的設(shè)計(jì)。
NVIDIA GH100 GPU 由多個(gè) GPU 處理集群( GPC )、紋理處理集群( TPC )、流式多處理器( SMS )、 L2 高速緩存和 HBM3 存儲(chǔ)器控制器組成。
GH100 GPU 的全面實(shí)施包括以下裝置:
8 個(gè) GPC , 72 個(gè) TPC ( 9 個(gè) TPC / GPC ), 2 個(gè) SMs / TPC ,每個(gè)完整 GPU 144 條 SMs
每個(gè) SM 128 個(gè) FP32 CUDA 內(nèi)核,每個(gè)完整 GPU 18432 個(gè) FP32 CUDA 內(nèi)核
每個(gè) SM 4 個(gè)第四代張量核,每個(gè)完整 GPU 576 個(gè)
6 個(gè) HBM3 或 HBM2e 堆棧, 12 個(gè) 512 位內(nèi)存控制器
60 MB 二級(jí)緩存
第四代 NVLink 和 PCIe 第 5 代
NVIDIA H100 GPU 與 SXM5 板形因子包括以下單元:
8 條 GPC , 66 條 TPC , 2 條 SMs / TPC ,每個(gè) GPU 132 條 SMs
每個(gè) SM 128 個(gè) FP32 CUDA 核,每個(gè) GPU 16896 個(gè) FP32 CUDA 核
每個(gè) SM 4 個(gè)第四代張量核,每個(gè) GPU 528 個(gè)
80 GB HBM3 , 5 個(gè) HBM3 堆棧, 10 個(gè) 512 位內(nèi)存控制器
50 MB 二級(jí)緩存
第四代 NVLink 和 PCIe 第 5 代
具有 PCIE Gen 5 板形狀因子 的NVIDIA H100 GPU 包括以下單元:
7 或 8 個(gè) GPC , 57 個(gè) TPC , 2 條 SMs / TPC ,每個(gè) GPU 114 條 SMs
128 個(gè) FP32 CUDA 顏色/ SM ,每個(gè) GPU 14592 個(gè) FP32 CUDA 顏色
每個(gè) SM 4 個(gè)第四代張量核,每個(gè) GPU 456 個(gè)
80 GB HBM2e , 5 個(gè) HBM2e 堆棧, 10 個(gè) 512 位內(nèi)存控制器
50 MB 二級(jí)緩存
第四代 NVLink 和 PCIe 第 5 代
與基于 TSMC 7nm N7 工藝的上一代 GA100 GPU 相比,使用 TSMC 4N 制造工藝使 H100 能夠增加 GPU 核心頻率,提高每瓦性能,并包含更多 GPC 、 TPC 和 SMs 。
圖 3 顯示了一個(gè)完整的 GH100 GPU 和 144 條短信。 H100 SXM5 GPU 有 132 條短信, PCIe 版本有 114 條短信。 H100 GPU 主要用于執(zhí)行 AI 、 HPC 和數(shù)據(jù)分析的數(shù)據(jù)中心和邊緣計(jì)算工作負(fù)載,但不用于圖形處理。 SXM5 和 PCIe H100 GPU 中只有兩個(gè) TPC 支持圖形(也就是說(shuō),它們可以運(yùn)行頂點(diǎn)、幾何體和像素著色器)。
Figure 3. GH100 全 GPU 帶 144 條 SMs
H100 SM 架構(gòu)
在NVIDIA A100 張量核心 GPU SM 架構(gòu)上, H100 SM 由于引入了 FP8 而使每 100 浮點(diǎn)運(yùn)算功率 A100 峰值翻倍,并且在先前所有張量核心、 FP32 和 FP64 數(shù)據(jù)類型、時(shí)鐘時(shí)鐘上加倍 A100 原始 SM 計(jì)算功率。
與上一代 A100 相比,新的 transformer 引擎與 NVIDIA Hopper FP8 Tensor Core 相結(jié)合,在大型語(yǔ)言模型上提供了高達(dá) 9 倍的人工智能訓(xùn)練和 30 倍的人工智能推理加速。新的 NVIDIA Hopper DPX 指令使史密斯 – 沃特曼算法處理基因組學(xué)和蛋白質(zhì)測(cè)序的速度提高了 7 倍。
新的 NVIDIA Hopper 第四代 Tensor Core 、 Tensor Memory Accelerator ,以及許多其他新的 SM 和通用 H100 架構(gòu)改進(jìn),在許多其他情況下,共同提供高性能計(jì)算機(jī)和人工智能高達(dá) 3 倍的性能。
Peak TF32 Tensor Core1500 TFLOPS | 1000 TFLOPS2400 TFLOPS | 800 TFLOPS2
Peak FP16 Tensor Core11000 TFLOPS | 2000 TFLOPS2800 TFLOPS | 1600 TFLOPS2
Peak BF16 Tensor Core11000 TFLOPS | 2000 TFLOPS2800 TFLOPS | 1600 TFLOPS2
Peak FP8 Tensor Core12000 TFLOPS | 4000 TFLOPS21600 TFLOPS | 3200 TFLOPS2
Peak INT8 Tensor Core12000 TOPS | 4000 TOPS21600 TOPS | 3200 TOPS2
表 1 。 NVIDIA H100 Tensor Core GPU 初步性能規(guī)范
H100 的初步性能評(píng)估基于當(dāng)前預(yù)期,并可能會(huì)隨著運(yùn)輸產(chǎn)品的變化而變化
使用稀疏特性的有效 TFLOPS / top
圖 4 。 GH100 流式多處理器
H100 SM 主要功能概述
第四代張量核:
與 A100 相比,芯片到芯片的速度提高了 6 倍,包括每 SM 的加速比、額外的 SM 計(jì)數(shù)和更高的 H100 時(shí)鐘。
與上一代 16 位浮點(diǎn)選項(xiàng)相比,基于每個(gè) SM , Tensor Core 在等效數(shù)據(jù)類型上的 MMA (矩陣乘法累加)計(jì)算速率是 A100 SM 的 2 倍,在使用新 FP8 數(shù)據(jù)類型時(shí)是 A100 的 4 倍。
稀疏特性利用深度學(xué)習(xí)網(wǎng)絡(luò)中的細(xì)粒度結(jié)構(gòu)化稀疏性,將標(biāo)準(zhǔn)張量核心運(yùn)算的性能提高了一倍
新的 DPX instructions 在 A100 GPU 上將動(dòng)態(tài)編程算法的速度提高了 7 倍。兩個(gè)例子包括用于基因組處理的史密斯 – 沃特曼算法,以及用于在動(dòng)態(tài)倉(cāng)庫(kù)環(huán)境中為一組機(jī)器人尋找最佳路徑的弗洛伊德 – 沃沙爾算法。
3 倍于 IEEE FP64 和 FP32 與 A100 相比,芯片間的處理速度更快,因?yàn)槊總€(gè) SM 的時(shí)鐘性能比 A100 快 2 倍,加上額外的 SM 計(jì)數(shù)和更高的 H100 時(shí)鐘。
256 KB 的組合共享內(nèi)存和一級(jí)數(shù)據(jù)緩存,比 A100 大 1.33 倍。
新的 asynchronous execution 功能包括一個(gè)新的 張量記憶加速器( TMA ) 單元,它可以在全局內(nèi)存和共享內(nèi)存之間高效地傳輸大塊數(shù)據(jù)。 TMA 還支持集群中線程塊之間的異步復(fù)制。還有一個(gè)新的 異步事務(wù)屏障 用于進(jìn)行原子數(shù)據(jù)移動(dòng)和同步。
新的 線程塊簇 功能公開(kāi)了對(duì)多條短信的位置控制。
分布式共享內(nèi)存 支持跨多個(gè) SM 共享內(nèi)存塊的裝載、存儲(chǔ)和原子的 SM 到 SM 直接通信
H100 張量核結(jié)構(gòu)
張量核是專門用于矩陣乘法和累加( MMA )數(shù)學(xué)運(yùn)算的高性能計(jì)算核,為人工智能和 HPC 應(yīng)用提供了突破性的性能。與標(biāo)準(zhǔn)浮點(diǎn)( FP )、整數(shù)( INT )和融合乘法累加( FMA )操作相比,在一個(gè) NVIDIA GPU 中跨 SMs 并行運(yùn)行的張量核在吞吐量和效率上都有了顯著提高。
在NVIDIA V100GPU 中首次引入張量核,并在每個(gè)新的 NVIDIA GPU 體系結(jié)構(gòu)生成中進(jìn)一步增強(qiáng)。
H100 中新的第四代 Tensor Core 體系結(jié)構(gòu)每 SM (時(shí)鐘對(duì)時(shí)鐘)提供的原始密集稀疏矩陣數(shù)學(xué)吞吐量是 A100 的兩倍,考慮到 H100 比 A100 更高的 GPU 升壓時(shí)鐘,這一數(shù)字甚至更高。支持 FP8 、 FP16 、 BF16 、 TF32 、 FP64 和 INT8 MMA 數(shù)據(jù)類型。新的 Tensor 核還具有更高效的數(shù)據(jù)管理,可節(jié)省高達(dá) 30% 的操作數(shù)傳遞能力。
圖 5 。 H100 FP16 Tensor Core 的吞吐量是 A100 FP16 Tensor Core 的 3 倍
NVIDIA Hopper FP8 數(shù)據(jù)格式
H100 GPU 增加了 FP8 張量核,以加速人工智能訓(xùn)練和推理。如圖 6 所示, FP8 張量磁芯支持 FP32 和 FP16 累加器,以及兩種新的 FP8 輸入類型:
具有 4 個(gè)指數(shù)位、 3 個(gè)尾數(shù)位和 1 個(gè)符號(hào)位的 E4M3
E5M2 ,具有 5 個(gè)指數(shù)位、 2 個(gè)尾數(shù)位和 1 個(gè)符號(hào)位
E4M3 支持需要更少動(dòng)態(tài)范圍和更高精度的計(jì)算,而 E5M2 提供更寬的動(dòng)態(tài)范圍和更低的精度。與 FP16 或 BF16 相比, FP8 將數(shù)據(jù)存儲(chǔ)需求減半,吞吐量翻倍。
本文后面介紹的新 transformer 引擎使用 FP8 和 FP16 精度來(lái)減少內(nèi)存使用并提高性能,同時(shí)仍保持大型語(yǔ)言和其他模型的準(zhǔn)確性。
圖 6 。新NVIDIA Hopper FP8 精度:吞吐量是 H100 FP16 或 BF16 的 2 倍,占地面積是后者的一半
圖 7 。 H100 FP8 Tensor Core 的吞吐量是 A100 FP16 Tensor Core 的 6 倍
圖 8 。 H100 TF32 、 FP64 和 INT8 張量核的吞吐量都是 A100 的 6 倍
表 2 顯示了多種數(shù)據(jù)類型的 H100 數(shù)學(xué)加速比超過(guò) A100 。
表 2 。 H100 的加速比超過(guò) A100 ( H100 的初步性能, TC =張量核心)
。除非另有規(guī)定,否則所有測(cè)量值均以 Tflop 為單位。
1 – H100 基于當(dāng)前預(yù)期和運(yùn)輸產(chǎn)品變化的初步性能估計(jì)
用于加速動(dòng)態(tài)規(guī)劃的新 DPX 指令
許多蠻力優(yōu)化算法的特點(diǎn)是,在解決較大的問(wèn)題時(shí),子問(wèn)題的解決方案會(huì)被多次重用。動(dòng)態(tài)規(guī)劃( DP )是一種通過(guò)將復(fù)雜的遞歸問(wèn)題分解為更簡(jiǎn)單的子問(wèn)題來(lái)解決它的算法技術(shù)。通過(guò)存儲(chǔ)子問(wèn)題的結(jié)果,無(wú)需在以后需要時(shí)重新計(jì)算, DP 算法將指數(shù)問(wèn)題集的計(jì)算復(fù)雜度降低到線性范圍。
DP 通常用于廣泛的優(yōu)化、數(shù)據(jù)處理和基因組學(xué)算法。
在快速發(fā)展的基因組測(cè)序領(lǐng)域,史密斯 – 沃特曼 DP 算法是最重要的方法之一。
在機(jī)器人技術(shù)領(lǐng)域, Floyd Warshall 是一個(gè)關(guān)鍵算法,用于實(shí)時(shí)通過(guò)動(dòng)態(tài)倉(cāng)庫(kù)環(huán)境為一組機(jī)器人尋找最佳路線。
H100 引入 DPX 指令,使 DP 算法的性能比 NVIDIA Ampere GPU 提高了 7 倍。這些新指令為許多 DP 算法的內(nèi)環(huán)提供高級(jí)融合操作數(shù)支持。這將大大加快疾病診斷、物流路線優(yōu)化甚至圖形分析的解決速度。
圖 9 。 DPX 指令加速動(dòng)態(tài)編程
H100 計(jì)算性能摘要
總體而言,考慮到 H100 的所有新計(jì)算技術(shù)進(jìn)步, H100 的計(jì)算性能比 A100 提高了約 6 倍。圖 10 以級(jí)聯(lián)方式總結(jié)了 H100 的改進(jìn):
132 條短信比 A100 108 條短信增加 22%
由于新的第四代 Tensor 內(nèi)核, H100 短信的速度提高了兩倍。
在每個(gè) Tensor 內(nèi)核中,新的 FP8 格式和相關(guān)的 transformer 引擎提供了另一個(gè) 2 倍的改進(jìn)。
H100 中時(shí)鐘頻率的增加帶來(lái)了大約 1.3 倍的性能提升。
總的來(lái)說(shuō),這些改進(jìn)使 H100 的峰值計(jì)算吞吐量約為 A100 的 6 倍,這對(duì)于世界上最需要計(jì)算的工作負(fù)載來(lái)說(shuō)是一個(gè)重大飛躍。
圖 10 。 H100 計(jì)算改進(jìn)總結(jié)
H100 的吞吐量是全球的 6 倍大多數(shù)需要計(jì)算的工作負(fù)載。
H100 GPU 層次結(jié)構(gòu)和異步改進(jìn)
在并行程序中實(shí)現(xiàn)高性能的兩個(gè)關(guān)鍵是數(shù)據(jù)局部性和異步執(zhí)行。通過(guò)將程序數(shù)據(jù)移動(dòng)到盡可能靠近執(zhí)行單元的位置,程序員可以利用對(duì)本地?cái)?shù)據(jù)進(jìn)行低延遲和高帶寬訪問(wèn)所帶來(lái)的性能。 異步執(zhí)行涉及尋找與內(nèi)存?zhèn)鬏敽推渌幚碇丿B的獨(dú)立任務(wù)。目標(biāo)是讓 GPU 中的所有單元都得到充分利用。
在下一節(jié)中,我們將探討添加到 NVIDIA Hopper 中 GPU 編程層次結(jié)構(gòu)中的一個(gè)重要新層,它以比單個(gè) SM 上的單個(gè)線程塊更大的規(guī)模公開(kāi)局部性。我們還介紹了新的異步執(zhí)行功能,這些功能可以提高性能并減少同步開(kāi)銷。
線程塊簇
CUDA 編程模型長(zhǎng)期以來(lái)依賴于 GPU 計(jì)算體系結(jié)構(gòu),該體系結(jié)構(gòu)使用包含多個(gè)線程塊的網(wǎng)格來(lái)利用程序中的局部性。線程塊包含在單個(gè) SM 上并發(fā)運(yùn)行的多個(gè)線程,這些線程可以與快速屏障同步,并使用 SM 的共享內(nèi)存交換數(shù)據(jù)。然而,隨著 GPU 超過(guò) 100 個(gè) SMs ,計(jì)算程序變得更加復(fù)雜,作為編程模型中表示的唯一局部單元的線程塊不足以最大限度地提高執(zhí)行效率。
H100 引入了一種新的線程塊集群體系結(jié)構(gòu),它以比單個(gè) SM 上的單個(gè)線程塊更大的粒度公開(kāi)了對(duì)局部性的控制。線程塊集群擴(kuò)展了 CUDA 編程模型,并在 GPU 的物理編程層次結(jié)構(gòu)中添加了另一個(gè)級(jí)別,以包括線程、線程塊、線程塊集群和網(wǎng)格。
集群是一組線程塊,保證并發(fā)調(diào)度到一組 SMs 上,其目標(biāo)是實(shí)現(xiàn)多個(gè) SMs 之間線程的高效協(xié)作。 H100 中的集群在 GPC 內(nèi)的 SMs 中同時(shí)運(yùn)行。
GPC 是硬件層次結(jié)構(gòu)中的一組 SMs ,它們?cè)谖锢砩峡偸蔷o密相連。集群具有硬件加速障礙和新的內(nèi)存訪問(wèn)協(xié)作能力,將在以下部分討論。 GPC 中用于 SMs 的專用 SM-to-SM 網(wǎng)絡(luò)在群集中的線程之間提供快速數(shù)據(jù)共享。
在 CUDA 中,網(wǎng)格中的線程塊可以在內(nèi)核啟動(dòng)時(shí)選擇性地分組到集群中,如圖 11 所示,集群功能可以從 CUDA cooperative_groups API 中利用。
圖 11 。線程塊簇和帶簇的網(wǎng)格
網(wǎng)格由傳統(tǒng) CUDA 編程模型中的線程塊組成,如 A100 所示,如圖左半部分所示。NVIDIA 的 Hopper 架構(gòu)增加了可選的集群層次結(jié)構(gòu),在圖的右半部分顯示。
分布式共享內(nèi)存
使用集群,所有線程都可以通過(guò)加載、存儲(chǔ)和原子操作直接訪問(wèn)其他 SM 的共享內(nèi)存。此功能稱為分布式共享內(nèi)存( DSEM ),因?yàn)楣蚕韮?nèi)存虛擬地址空間在邏輯上分布在集群中的所有塊上。
DSEM 使 SMs 之間的數(shù)據(jù)交換更加高效,不再需要通過(guò)全局內(nèi)存寫(xiě)入和讀取數(shù)據(jù)來(lái)傳遞數(shù)據(jù)。群集專用的 SM-to-SM 網(wǎng)絡(luò)確保了對(duì)遠(yuǎn)程 DSEM 的快速、低延遲訪問(wèn)。與使用全局內(nèi)存相比, DSEM 將線程塊之間的數(shù)據(jù)交換速度提高了約 7 倍。
圖 12 。線程塊到線程塊的數(shù)據(jù)交換( A100 與 H100 的集群)
在 CUDA 級(jí)別,集群中所有線程塊的所有 DSEM 段都映射到每個(gè)線程的通用地址空間中,這樣所有 DSEM 都可以用簡(jiǎn)單的指針直接引用。 CUDA 用戶可以利用 cooperative _ groups API 構(gòu)造指向集群中任何線程塊的通用指針。 DSEM 傳輸也可以表示為異步復(fù)制操作,與基于共享內(nèi)存的屏障同步,以跟蹤完成情況。
圖 13 顯示了在不同算法上使用集群的性能優(yōu)勢(shì)。集群使您能夠直接控制 GPU 的更大部分,而不僅僅是單個(gè) SM ,從而提高了性能。集群支持與更多線程的協(xié)作執(zhí)行,與單線程塊相比,集群可以訪問(wèn)更大的共享內(nèi)存池。
圖 13 。集群與非集群性能比較
H100 的初步性能評(píng)估基于當(dāng)前預(yù)期,并可能會(huì)隨著運(yùn)輸產(chǎn)品的變化而變化
異步執(zhí)行
每一代 NVIDIA GPU 都包括許多架構(gòu)增強(qiáng)功能,以提高性能、可編程性、能效、 GPU 利用率和許多其他因素。最近幾代 NVIDIA GPU 包含了異步執(zhí)行功能,以實(shí)現(xiàn)數(shù)據(jù)移動(dòng)、計(jì)算和同步的更多重疊。
在 NVIDIA Hopper 架構(gòu)提供了新的功能,提高異步執(zhí)行,并使進(jìn)一步重疊的內(nèi)存副本與計(jì)算和其他獨(dú)立的工作,同時(shí)也最小化同步點(diǎn)。我們描述了稱為張量?jī)?nèi)存加速器( TMA )的新異步內(nèi)存復(fù)制單元和一個(gè)新的異步事務(wù)屏障。
圖 14 。 NVIDIA Hopper 中的異步執(zhí)行并發(fā)性和增強(qiáng)功能
數(shù)據(jù)移動(dòng)、計(jì)算和同步的編程重疊。異步并發(fā)和最小化同步點(diǎn)是性能的關(guān)鍵。
張量記憶加速器
為了幫助提供強(qiáng)大的新 H100 張量?jī)?nèi)核,新的張量?jī)?nèi)存加速器( TMA )提高了數(shù)據(jù)獲取效率,它可以將大數(shù)據(jù)塊和多維張量從全局內(nèi)存?zhèn)鬏數(shù)焦蚕韮?nèi)存,然后再傳輸回來(lái)。
TMA 操作使用拷貝描述符啟動(dòng),該描述符使用張量維度和塊坐標(biāo)指定數(shù)據(jù)傳輸,而不是每個(gè)元素尋址(圖 15 )。可以指定達(dá)到共享內(nèi)存容量的大數(shù)據(jù)塊,并將其從全局內(nèi)存加載到共享內(nèi)存,或從共享內(nèi)存存儲(chǔ)回全局內(nèi)存。 TMA 通過(guò)支持不同的張量布局( 1D-5D 張量)、不同的內(nèi)存訪問(wèn)模式、縮減和其他功能,顯著降低了尋址開(kāi)銷,提高了效率。
圖 15 。通過(guò)復(fù)制描述符生成 TMA 地址
TMA 操作是異步的,并利用 A100 中引入的基于共享內(nèi)存的異步屏障。此外, TMA 編程模型是單線程的,其中選擇 warp 中的一個(gè)線程來(lái)發(fā)出異步 TMA 操作( cuda::memcpy_async ),以復(fù)制張量。因此,多個(gè)線程可以在 cuda::barrier 上等待數(shù)據(jù)傳輸?shù)耐瓿?。為了進(jìn)一步提高性能, H100 SM 增加了硬件來(lái)加速這些異步屏障等待操作。
TMA 的一個(gè)關(guān)鍵優(yōu)點(diǎn)是,它可以釋放線程來(lái)執(zhí)行其他獨(dú)立的工作。在 A100 上(圖 16 ,左圖),異步內(nèi)存拷貝是使用一條特殊的LoadGlobalStoreShared指令執(zhí)行的,因此線程負(fù)責(zé)生成所有地址并在整個(gè)拷貝區(qū)域中循環(huán)。
在 NVIDIA Hopper 上, TMA 負(fù)責(zé)一切。在啟動(dòng) TMA 之前,單個(gè)線程會(huì)創(chuàng)建一個(gè)拷貝描述符,從那時(shí)起,地址生成和數(shù)據(jù)移動(dòng)將在硬件中處理。 TMA 提供了一個(gè)簡(jiǎn)單得多的編程模型,因?yàn)樗袚?dān)了復(fù)制張量段時(shí)計(jì)算跨距、偏移和邊界計(jì)算的任務(wù)。
圖 16 。 H100 上 TMA 與 A100 上 LDGSTS 的異步內(nèi)存復(fù)制
異步事務(wù)屏障
異步屏障最初引入NVIDIA 安培架構(gòu)(圖 17 ,左)??紤]一組線程產(chǎn)生數(shù)據(jù),它們?cè)谝粋€(gè)屏障之后都消耗的數(shù)據(jù)。異步屏障將同步過(guò)程分為兩個(gè)步驟。
首先,當(dāng)線程完成生成其共享數(shù)據(jù)部分時(shí),會(huì)向Arrive發(fā)送信號(hào)。此Arrive是非阻塞的,因此線程可以自由執(zhí)行其他獨(dú)立工作。
最終,這些線程需要所有其他線程生成的數(shù)據(jù)。此時(shí),它們執(zhí)行一個(gè)Wait,這會(huì)阻止它們,直到每個(gè)線程都發(fā)出Arrive信號(hào)。
異步屏障的優(yōu)點(diǎn)是,它們使提前到達(dá)的線程能夠在等待時(shí)執(zhí)行獨(dú)立的工作。這種重疊是額外性能的來(lái)源。如果所有線程都有足夠的獨(dú)立工作,那么障礙實(shí)際上就沒(méi)有了,因?yàn)閃ait指令可以立即失效,因?yàn)樗芯€程都已經(jīng)到達(dá)。
NVIDIA Hopper 的新功能是 waiting 線程能夠在所有其他線程到達(dá)之前休眠。在以前的芯片上,等待線程會(huì)在共享內(nèi)存中的屏障對(duì)象上旋轉(zhuǎn)。
盡管異步屏障仍然是NVIDIA 的漏斗編程模型的一部分,但它增加了一種新的屏障形式,稱為異步交易屏障。異步事務(wù)屏障類似于異步屏障(圖 17 ,右圖)。它也是一個(gè)分割屏障,但它不僅計(jì)算線程到達(dá),還計(jì)算事務(wù)。
NVIDIA Hopper 包含一個(gè)用于寫(xiě)入共享內(nèi)存的新命令,該命令傳遞要寫(xiě)入的數(shù)據(jù)和事務(wù)計(jì)數(shù)。事務(wù)計(jì)數(shù)本質(zhì)上是字節(jié)計(jì)數(shù)。異步事務(wù)屏障在Wait命令處阻塞線程,直到所有生產(chǎn)者線程執(zhí)行Arrive,并且所有事務(wù)計(jì)數(shù)之和達(dá)到預(yù)期值。
異步事務(wù)屏障是用于異步 mem 拷貝或數(shù)據(jù)交換的強(qiáng)大新原語(yǔ)。如前所述,集群可以通過(guò)隱含的同步進(jìn)行線程塊到線程塊的數(shù)據(jù)交換,集群的能力建立在異步事務(wù)壁壘之上。
圖 17 。 A100 中的異步障礙與 H100 中的異步事務(wù)障礙
H100 HBM 和二級(jí)緩存內(nèi)存體系結(jié)構(gòu)
GPU 內(nèi)存體系結(jié)構(gòu)和層次結(jié)構(gòu)的設(shè)計(jì)對(duì)應(yīng)用程序性能至關(guān)重要,并影響 GPU 大小、成本、功耗和可編程性。 GPU 中存在許多內(nèi)存子系統(tǒng),從大量片外 DRAM (幀緩沖)設(shè)備內(nèi)存、不同級(jí)別和類型的片上內(nèi)存,到 SM 中用于計(jì)算的寄存器文件。
H100 HBM3 和 HBM2e DRAM 子系統(tǒng)
隨著 HPC 、 AI 和數(shù)據(jù)分析數(shù)據(jù)集的規(guī)模不斷擴(kuò)大,計(jì)算問(wèn)題變得越來(lái)越復(fù)雜,需要更大的 GPU 內(nèi)存容量和帶寬。
NVIDIA P100 是世界上第一個(gè)支持高帶寬 HBM2 存儲(chǔ)技術(shù)的 GPU 體系結(jié)構(gòu)。
NVIDIA V100 提供了更快、更高效、更高容量的 HBM2 實(shí)現(xiàn)。
NVIDIA A100 GPU 進(jìn)一步增加 HBM2 的性能和容量。
H100 SXM5 GPU 通過(guò)支持 80 GB (五層)的快速 HBM3 內(nèi)存,提供了超過(guò) 3 TB /秒的內(nèi)存帶寬,實(shí)際上比兩年前推出的 A100 內(nèi)存帶寬增加了 2 倍。 PCIe H100 提供 80 GB 的高速 HBM2e ,內(nèi)存帶寬超過(guò) 2 TB /秒。
圖 18 。世界上第一款 HBM3 GPU 內(nèi)存體系結(jié)構(gòu), 2 倍帶寬
內(nèi)存數(shù)據(jù)速率未最終確定,可能會(huì)在最終產(chǎn)品中發(fā)生變化。
H100 二級(jí)緩存
H100 中的 50 MB 二級(jí)緩存比 A100 40 MB 二級(jí)緩存大 1.25 倍。它可以緩存更大部分的模型和數(shù)據(jù)集,以便重復(fù)訪問(wèn),減少對(duì) HBM3 或 HBM2e DRAM 的訪問(wèn),并提高性能。
二級(jí)緩存使用分區(qū)交叉結(jié)構(gòu),對(duì)直接連接到分區(qū)的 GPC 中 SMs 的內(nèi)存訪問(wèn)進(jìn)行本地化和緩存數(shù)據(jù)。二級(jí)緩存駐留控制優(yōu)化容量利用率,使您能夠有選擇地管理應(yīng)保留在緩存中或被逐出的數(shù)據(jù)。
HBM3 或 HBM2e DRAM 和二級(jí)緩存子系統(tǒng)都支持?jǐn)?shù)據(jù)壓縮和解壓縮技術(shù),以優(yōu)化內(nèi)存和緩存的使用和性能。
表 3 。比較 或NVIDIA A100 和 H1001數(shù)據(jù)中心 GPU
H100 的初步規(guī)格基于當(dāng)前預(yù)期,并可能會(huì)在運(yùn)輸產(chǎn)品中發(fā)生變化
使用稀疏特性的有效頂部/ t 頂部
GPU Peak Clock and GPU Boost Clock are synonymous for NVIDIA Data Center GPU
由于 H100 和 A100 Tensor Core GPU 設(shè)計(jì)用于安裝在高性能服務(wù)器和數(shù)據(jù)中心機(jī)架中,為 AI 和 HPC 計(jì)算負(fù)載供電,因此它們不包括顯示連接器、用于光線跟蹤加速的 NVIDIA RT Core 或 NVENC 編碼器。
計(jì)算能力
H100 GPU 支持新的計(jì)算能力 9.0 。表 4 比較了 NVIDIA GPU 體系結(jié)構(gòu)不同計(jì)算能力的參數(shù)。
表 1 。計(jì)算能力: V100 vs.A100 vs.H100
Transformer 發(fā)動(dòng)機(jī)
Transformer 模型是當(dāng)今廣泛使用的語(yǔ)言模型(從 BERT 到 GPT-3 )的支柱,它們需要巨大的計(jì)算資源。 Transformers 最初是為自然語(yǔ)言處理( natural language processing , NLP )開(kāi)發(fā)的,越來(lái)越多地應(yīng)用于計(jì)算機(jī)視覺(jué)、藥物發(fā)現(xiàn)等不同領(lǐng)域。
它們的規(guī)模繼續(xù)呈指數(shù)級(jí)增長(zhǎng),現(xiàn)在已達(dá)到數(shù)萬(wàn)億個(gè)參數(shù),導(dǎo)致它們的培訓(xùn)時(shí)間長(zhǎng)達(dá)數(shù)月,這對(duì)于業(yè)務(wù)需求來(lái)說(shuō)是不切實(shí)際的,因?yàn)樾枰罅坑?jì)算。例如, Megatron 圖靈 NLG ( MT-NLG )需要 2048 NVIDIA A100 GPU 運(yùn)行 8 周才能進(jìn)行訓(xùn)練。總體而言, transformer 模型在過(guò)去 5 年中以每 2 年 275 倍的速度增長(zhǎng),遠(yuǎn)遠(yuǎn)快于大多數(shù)其他人工智能模型(圖 19 )。
圖 19 。 transformer 模型尺寸隨著許多不同的用例呈指數(shù)增長(zhǎng)
H100 包括一個(gè)新的 transformer 引擎,該引擎使用軟件和定制的 NVIDIA Hopper Tensor 核心技術(shù),顯著加速變壓器的人工智能計(jì)算。
圖 20 。 transformer 發(fā)動(dòng)機(jī)概念操作
混合精度的目標(biāo)是智能地管理精度以保持精度,同時(shí)仍能獲得更小、更快的數(shù)值格式的性能。在 Transformer 模型的每一層, transformer 引擎分析張量核產(chǎn)生的輸出值的統(tǒng)計(jì)信息。
Transformer 引擎知道下一個(gè)是哪種類型的神經(jīng)網(wǎng)絡(luò)層,以及它所需的精度,因此在將張量存儲(chǔ)到內(nèi)存之前,還可以決定將張量轉(zhuǎn)換為哪種目標(biāo)格式。與其他數(shù)字格式相比, FP8 的范圍更為有限。
為了最佳地使用可用范圍, Transformer 引擎還使用根據(jù)張量統(tǒng)計(jì)數(shù)據(jù)計(jì)算的比例因子,動(dòng)態(tài)地將張量數(shù)據(jù)縮放到可表示的范圍。因此,每一層都以其所需的精確范圍運(yùn)行,并以最佳方式加速。
第四代 NVLink 和 NVLink 網(wǎng)絡(luò)
新興的 exascale HPC 和萬(wàn)億參數(shù)人工智能模型(用于超人類對(duì)話人工智能等任務(wù))需要數(shù)月的訓(xùn)練,即使是在超級(jí)計(jì)算機(jī)上。將這種延長(zhǎng)的培訓(xùn)時(shí)間從幾個(gè)月壓縮到幾天,以便對(duì)企業(yè)更有用,需要服務(wù)器集群中每個(gè) GPU 之間進(jìn)行高速、無(wú)縫的通信。 PCIe 帶寬有限,造成了瓶頸。為了構(gòu)建最強(qiáng)大的端到端計(jì)算平臺(tái),需要更快、更可擴(kuò)展的 NVLink 互連。
NVLink 是NVIDIA 的高帶寬、節(jié)能、低延遲、無(wú)損 GPU 到 – GPU 互連,包括彈性特性,如鏈路級(jí)錯(cuò)誤檢測(cè)和數(shù)據(jù)包重放機(jī)制,以保證數(shù)據(jù)的成功傳輸。新的第四代 NVLink 在 H100 GPU 中實(shí)現(xiàn),與NVIDIA A100 張量核心 GPU 中使用的第三代 NVLink 相比,提供 1.5 倍的通信帶寬。
對(duì)于多 GPU I / O 和共享內(nèi)存訪問(wèn),新的 NVLink 以 900 GB / s 的總帶寬運(yùn)行,提供的帶寬是 PCIe Gen 5 的 7 倍。 A100 GPU 中的第三代 NVLink 在每個(gè)方向上使用四個(gè)差分對(duì)(通道),以創(chuàng)建單個(gè)鏈路,在每個(gè)方向上提供 25 GB / s 的有效帶寬。相比之下,第四代 NVLink 在每個(gè)方向上僅使用兩個(gè)高速差分對(duì)來(lái)形成單個(gè)鏈路,在每個(gè)方向上也提供 25 GB / s 的有效帶寬。
H100 包括 18 個(gè)第四代 NVLink 鏈路,可提供 900 GB / s 的總帶寬。
A100 包括 12 個(gè)第三代 NVLink 鏈路,可提供 600 GB /秒的總帶寬。
在第四代 NVLink 的基礎(chǔ)上, H100 還引入了新的 NVLink 網(wǎng)絡(luò)互連,這是 NVLink 的一個(gè)可擴(kuò)展版本,使 GPU 能夠跨多個(gè)計(jì)算節(jié)點(diǎn)在多達(dá) 256 個(gè) GPU 節(jié)點(diǎn)之間進(jìn)行 GPU 通信。
與常規(guī) NVLink 不同, NVLink 網(wǎng)絡(luò)引入了一個(gè)新的網(wǎng)絡(luò)地址空間,所有 GPU 共享一個(gè)公共地址空間,請(qǐng)求直接使用 GPU 物理地址路由。 H100 中的新地址轉(zhuǎn)換硬件支持將所有 GPU 地址空間彼此隔離,并與網(wǎng)絡(luò)地址空間隔離。這使得 NVLink 網(wǎng)絡(luò)能夠安全地?cái)U(kuò)展到更大數(shù)量的 GPU 。
由于 NVLink 網(wǎng)絡(luò)端點(diǎn)不共享公共內(nèi)存地址空間,因此不會(huì)在整個(gè)系統(tǒng)中自動(dòng)建立 NVLink 網(wǎng)絡(luò)連接。相反,與 InfiniBand 等其他網(wǎng)絡(luò)接口類似,用戶軟件應(yīng)該根據(jù)需要明確地在端點(diǎn)之間建立連接。
第三代網(wǎng)絡(luò)交換機(jī)
新的第三代 NVSwitch 技術(shù)包括駐留在節(jié)點(diǎn)內(nèi)部和外部的交換機(jī),用于連接服務(wù)器、集群和數(shù)據(jù)中心環(huán)境中的多個(gè) GPU 。節(jié)點(diǎn)內(nèi)的每個(gè)新的第三代 NVSwitch 都提供 64 個(gè)第四代 NVLink 鏈路端口,以加速多 GPU 連接。交換機(jī)總吞吐量從上一代的 7.2 TB / s 增加到 13.6 TB / s 。
新的第三代 NVSwitch 還通過(guò)多播和 NVIDIA SHARP 在網(wǎng)絡(luò)縮減方面提供了集體操作的硬件加速。加速集體包括write broadcast(all_gather)、reduce_scatter和broadcast atomics。與在 A100 上使用 NVIDIA 集體通訊圖書(shū)館 ( NCCL )相比,結(jié)構(gòu)內(nèi)多播和減少提供了高達(dá) 2 倍的吞吐量增益,同時(shí)顯著減少了小數(shù)據(jù)塊大小集合的延遲。 NVSwitch collectives 的加速功能顯著降低了短信在集體通信中的負(fù)載。
新型 NVLink 交換系統(tǒng)
結(jié)合新的 NVLINK 網(wǎng)絡(luò)技術(shù)和新的第三代 NVSwitch , NVIDIA 能夠以前所未有的通信帶寬水平構(gòu)建大規(guī)模 NVLINK 交換系統(tǒng)網(wǎng)絡(luò)。每個(gè) GPU 節(jié)點(diǎn)暴露出節(jié)點(diǎn)中 GPU 的所有 NVLink 帶寬的 2:1 錐形級(jí)別。這些節(jié)點(diǎn)通過(guò) NVLink 交換機(jī)模塊中包含的第二級(jí) NVSwitch 連接在一起, NVLink 交換機(jī)模塊位于計(jì)算節(jié)點(diǎn)之外,并將多個(gè)節(jié)點(diǎn)連接在一起。
NVLink 交換機(jī)系統(tǒng)最多支持 256 GPU 。連接的節(jié)點(diǎn)可以提供 57.6 TB 的全對(duì)全帶寬,并可以提供令人難以置信的 FP8 稀疏人工智能計(jì)算的 1 倍。
圖 21 顯示了基于 A100 和 H100 的 32 節(jié)點(diǎn) 256 GPU DGX 疊加的比較。基于 H100 的 SuperPOD 使用新的 NVLink 交換機(jī)互連 DGX 節(jié)點(diǎn)。
圖 21 。 DGX A100 與 DGX H100 256 節(jié)點(diǎn) NVIDIA SuperPOD 架構(gòu)比較
DGX H100 SuperPads 可跨越多達(dá) 256 GPU ,使用基于第三代 NVSwitch 技術(shù)的新型 NVLink 交換機(jī),通過(guò) NVLink 交換機(jī)系統(tǒng)完全連接。如圖所示,與基于 A100 、具有類似規(guī)模、采用 leaf spine 架構(gòu)的機(jī)器相比, H100 系統(tǒng)根本不需要 InfiniBand 連接。
例如,與上一代 InfiniBand 系統(tǒng)相比,采用 2:1 錐形胖樹(shù)拓?fù)浣Y(jié)構(gòu)的 NVLink 網(wǎng)絡(luò)互連使所有對(duì)所有交換機(jī)的對(duì)分帶寬增加了 9 倍,使所有減少的吞吐量增加了 4.5 倍。
PCIe 第 5 代
H100 集成了 PCI Express Gen 5 x16 通道接口,提供 128 GB / s 的總帶寬(每個(gè)方向 64 GB / s ),而 A100 中包含的 Gen 4 PCIe 總帶寬為 64 GB / s (每個(gè)方向 32 GB / s )。
使用其 PCIe Gen 5 接口, H100 可以與性能最高的 x86 CPU 和 SmartNICs 以及 數(shù)據(jù)處理器 ( DPU )接口。 H100 設(shè)計(jì)用于與 NVIDIA BlueField-3 DPU 的最佳連接,用于 400 Gb / s 以太網(wǎng)或下一個(gè)數(shù)據(jù)速率( NDR ) 400 Gb / s InfiniBand 網(wǎng)絡(luò)加速,用于安全的 HPC 和 AI 工作負(fù)載。
H100 增加了對(duì)本機(jī) PCIe 原子操作的支持,如 32 位和 64 位數(shù)據(jù)類型的原子 CA 、原子交換和原子提取添加,加快了 CPU 和 GPU 之間的同步和原子操作。 H100 還支持單根輸入/輸出虛擬化( SR-IOV ),該虛擬化支持為多個(gè)進(jìn)程或虛擬機(jī)共享和虛擬化單個(gè) PCIe 連接的 GPU 。 H100 允許連接 GPU 的單個(gè) SR-IOV PCIe 的虛擬功能( VF )或物理功能( PF )通過(guò) NVLink 訪問(wèn)對(duì)等方 GPU 。
關(guān)于作者
Michael Andersch 是NVIDIA 首席 GPU 建筑師和高級(jí)建筑經(jīng)理。他在計(jì)算架構(gòu)團(tuán)隊(duì)開(kāi)始了自己的職業(yè)生涯,在那里他專注于提升 GPU 的能力,以應(yīng)對(duì)世界上各種 CUDA 工作負(fù)載。近年來(lái), Michael 推動(dòng)了硬件和軟件的改進(jìn),特別是為了提高深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練的性能,他的團(tuán)隊(duì)現(xiàn)在參與到訓(xùn)練性能至關(guān)重要的任何地方;從調(diào)整深度學(xué)習(xí)社區(qū)的最新神經(jīng)網(wǎng)絡(luò)到設(shè)計(jì)下一代 GPU 。
Greg Palmer 是 GPU 建筑集團(tuán)的NVIDIA 杰出工程師。自 2006 年費(fèi)米一代以來(lái),格雷格一直擔(dān)任 GPU 前端管道的系統(tǒng)架構(gòu)師。他主要關(guān)注 GPU 內(nèi)的工作分配和調(diào)度、上下文調(diào)度和同步、圖形和計(jì)算搶占機(jī)制,以及多實(shí)例 GPU 功能。在加入NVIDIA 之前,格雷格曾在幾家超級(jí)計(jì)算和網(wǎng)絡(luò)初創(chuàng)公司設(shè)計(jì)過(guò) ASIC 。
Ronny Krashinsky 設(shè)計(jì) NVIDIA GPU 已有 10 年。他開(kāi)始了他的 NVIDIA 研究生涯,后來(lái)加入了流式多處理器團(tuán)隊(duì),設(shè)計(jì)了 voltasm 。羅尼是 100 個(gè)深度學(xué)習(xí)特性的首席架構(gòu)師,他現(xiàn)在管理著 NVIDIA 的深度學(xué)習(xí)架構(gòu)路線圖。
Vishal 是 NVIDIA 的高級(jí)開(kāi)發(fā)技術(shù)工程師,專注于 GPU 應(yīng)用程序的性能優(yōu)化。他在 GPU 計(jì)算領(lǐng)域工作了 10 多年。他熱衷于向用戶教授 CUDA 和 GPU 計(jì)算,并推動(dòng) CUDA 編程指南的內(nèi)容。他的日?;顒?dòng)包括與領(lǐng)域科學(xué)家和行業(yè)專家合作,以改善他們?cè)?GPU 上的工作負(fù)載。
Nick Stam 是NVIDIA 的高級(jí)技術(shù)營(yíng)銷總監(jiān)。他的團(tuán)隊(duì)為媒體和行業(yè)分析師提供技術(shù)支持,同時(shí)還生成白皮書(shū)和評(píng)論員輔助資料。在加入 NVIDIA 之前, Nick 曾在 PC 雜志《美國(guó)》工作多年,并與他人共同創(chuàng)建了 ExtremeTech 網(wǎng)站。自 1980 年以來(lái),尼克一直在計(jì)算機(jī)行業(yè)擔(dān)任各種技術(shù)和管理職位。
Gonzalo Brito 是 NVIDIA 計(jì)算性能與 HPC 團(tuán)隊(duì)的高級(jí)開(kāi)發(fā)技術(shù)工程師,工作于硬件和軟件的交叉點(diǎn)。他熱衷于讓加速計(jì)算變得更容易實(shí)現(xiàn)。在加入NVIDIA 之前,岡薩洛在 RWTH 亞琛大學(xué)空氣動(dòng)力學(xué)研究所開(kāi)發(fā)了多物理方法,用于顆粒流。
Sridhar Ramaswamy 是NVIDIA 的技術(shù)營(yíng)銷總監(jiān)。他的團(tuán)隊(duì)通過(guò)白皮書(shū)、技術(shù)產(chǎn)品指南和嵌入式人工智能計(jì)算、機(jī)器學(xué)習(xí)、云游戲、流媒體設(shè)備和自動(dòng)駕駛汽車領(lǐng)域的其他輔助資料,幫助媒體和分析師了解 NVIDIA 的產(chǎn)品和技術(shù)。在加入 NVIDIA 之前, Sridhar 自 1996 年起擔(dān)任幾代圖形芯片組的首席工程師和架構(gòu)師。
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5021瀏覽量
103256 -
gpu
+關(guān)注
關(guān)注
28文章
4753瀏覽量
129063 -
PCIe
+關(guān)注
關(guān)注
15文章
1243瀏覽量
82778
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論