CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新智元報道

編輯:LRS

【新智元導讀】最近老黃掏出的顯示卡核彈Hopper H100可謂是風頭無兩,效能全面碾壓老前輩。但除了800億電晶體,Hopper架構也是完全重新設計的,一起看看架構裡面還有啥細節?

在英偉達GTC 2022大會上,老黃更新了服役近兩年的安培微架構(Ampere),推出Hopper架構,並丟擲一塊專為超算設計、包含800億個電晶體的顯示卡Hopper H100,比老前輩A100顯示卡的540億電晶體還要高出不少。

但光看名字和引數還不夠,Hopper到底牛在哪?

最近英偉達的架構開發師們釋出了一篇部落格,深入講解和分析了Hopper架構。文章作者包括英偉達首席GPU架構師Michael Andersch,GPU架構組傑出工程師Greg Palmer和Ronny Krashinsky,英偉達高階技術營銷總監Nick Stam,高階開發技術工程師Vishal Mehta等核心開發成員。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

Hopper牛在哪?

Hopper架構的名字來自Grace Hopper女士,她被譽為計算機軟體工程第一夫人、編譯語言COBOL之母,她是耶魯大學第一位數學女博士、世界上第三位程式設計師、全球首個編譯器的發明者,也是第一位發現「bug」的人。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

基於Hopper架構的英偉達Hopper H100張量核心GPU已經是第九代資料中心GPU了,相比上一代安培架構的A100 GPU,Hopper架構明顯強悍了很多,不僅電晶體數量有明顯提升,製作工藝也從7奈米提升到4奈米,為大規模AI和HPC提供了一個數量級的效能飛躍。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

同時H100繼承了A100的主要設計重點,提升了對AI和HPC工作負載的擴充套件能力,並在架構效率方面進行了大幅改進。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

對於當今的主流人工智慧和高效能計算模型,帶有InfiniBand互連的H100可提供比A100強30倍的效能。

並且新的NVLink Switch System在針對一些大型計算工作負載任務,比如需要在多個GPU加速節點上進行模型並行化時,能夠透過互聯調整負載,可以再次提高效能。在某些情況下,效能能夠在使用InfiniBand的H100基礎上再增加兩倍。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

可以說H100 GPU專為高效能計算和超大規模AI模型加速而生,AI模型的推理速度少說也能提升10倍。

Hopper晶片利用了Arm架構的靈活性,是一個完全重新設計、專為加速計算而設計的CPU和伺服器架構。H100能夠與英偉達Grace CPU搭配,藉助超快英偉達chip-to-chip互聯,可以提供高達900GB/s的總頻寬,比PCIe Gen5還要快7倍。

在TB級資料的高效能計算下,和世界上最快的伺服器相比,新設計能夠提升10倍效能和30倍的總頻寬。

開發人員總結了一個長長的H100 GPU關鍵新特性列表。

首先H100有一個新的流式多處理器(SM, streaming multiprocessor),效能和效率都有所提升。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的第四代張量核心與A100相比,chip-to-chip的效能提升6倍,速度提升主要來自更快的SM,更多的SM數量,以及H100中更高的時鐘頻率。在每個SM上,與上一代16位浮點選項相比,Tensor Cores在同等資料型別上的MMA(矩陣乘積)計算速率是A100 SM的2倍,使用新的FP8資料型別的速率是A100的4倍。稀疏性1功能利用了深度學習網路中的細粒度結構化稀疏性,使標準張量核心操作的效能提高了一倍。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的DPX指令對動態程式設計演算法的加速比A100 GPU高7倍。在基因組學處理的Smith-Waterman演算法,以及用於在動態倉庫環境中為機器人車隊尋找最佳路線的Floyd-Warshall演算法上驗證後,證實了效能提升。

與A100相比,IEEE FP64和FP32的處理率在晶片間快了3倍,這是由於每個SM的clock-for-clock效能快了2倍,加上H100的額外SM數量和更高的時鐘。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的執行緒塊叢集功能能夠以大於單個SM上的單個執行緒塊的顆粒度對位置性進行程式設計控制。擴充套件了CUDA程式設計模型,為程式設計層次增加了一個層次,現在包括執行緒、執行緒塊、執行緒塊叢集和網格。叢集使多個執行緒塊可以在多個SM上併發執行,以同步和協作方式獲取和交換資料。

分散式共享記憶體允許在多個SM共享記憶體塊上進行SM到SM的直接通訊,用於載入、儲存和原子學。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的非同步執行功能包括一個新的張量記憶體加速器(TMA)單元,可以在全域性記憶體和共享記憶體之間有效地傳輸大型資料塊。TMA還支援叢集中執行緒塊之間的非同步複製。還有一個新的非同步事務屏障,用於做原子資料移動和同步。

新的Transformer引擎採用了軟體和定製的英偉達Hopper Tensor Core技術的組合,專門用於加速轉化器模型的訓練和推理。Transformer引擎能夠智慧管理並動態選擇FP8和16位計算,自動處理每一層中FP8和16位之間的重鑄和縮放,與上一代A100相比,在大型語言模型上的AI訓練速度提升了9倍,AI推理速度提升了30倍。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

HBM3記憶體子系統比上一代增加了近2倍的頻寬。H100 SXM5 GPU是世界上第一個採用HBM3記憶體的GPU,提供領先於同級別的3TB/秒的記憶體頻寬。

50 MB L2 快取記憶體架構快取了大量的模型和資料集,在重複訪問時減少了對HBM3的訪問。

與A100相比,第二代多例項GPU(MIG)技術為每個GPU例項提供了約3倍的計算能力和近2倍的記憶體頻寬。也是首次提供具有MIG級TEE的機密計算能力。支援多達七個獨立的GPU例項,每個例項都有專用的NVDEC和NVJPG單元。每個例項都包括自己的一套效能監控器,可與NVIDIA開發人員工具一起使用。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的機密計算(Confidential Computing)支援可以保護使用者資料,抵禦硬體和軟體攻擊,並在虛擬化和MIG環境中更好地隔離和保護虛擬機器(VM)。H100實現了世界上第一個原生機密計算GPU,並以全PCIe線速向CPU擴充套件了可信執行環境(TEE)。

第四代NVLink在all-reduce操作上提供了3倍的頻寬,比上一代NVLink增加了50%的通用頻寬,多GPU IO的總頻寬為900 GB/秒,操作頻寬是PCIe第五代的7倍。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

第三代NVSwitch技術包括駐紮在節點內部和外部的交換機,用於連線伺服器、叢集和資料中心環境中的多個GPU。

節點內的每個NVSwitch提供64個第四代NVLink連結埠,以加速多GPU連線。交換機的總吞吐量從上一代的7。2 Tbits/秒增加到13。6 Tbits/秒。新的第三代NVSwitch技術還為多播和NVIDIA SHARP網內還原的集體操作提供了硬體加速。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

新的NVLink Switch系統互連技術和基於第三代NVSwitch技術的新的二級NVLink Switches引入了地址空間隔離和保護,使多達32個節點或256個GPU能夠透過NVLink以2:1的錐形樹狀拓撲連線起來。

這些連線的節點能夠提供57。6TB/秒的all-to-all頻寬,並能夠提供驚人的FP8稀疏AI計算的exaFLOP。PCIe Gen 5能夠提供128GB/秒的總頻寬(每個方向64GB/秒),而第四代PCIe的總頻寬為64GB/秒(每個方向32GB/秒)。PCIe Gen5使H100能夠與最高效能的x86 CPU和SmartNICs或資料處理單元(DPU)連線。

CUDA程式設計模型都改了!英偉達架構師團隊撰文:Hopper為啥這麼牛?

更多技術細節可以訪問原文檢視。總而言之,H100就是更快、更高、更強!(更貴)

參考資料:

https://developer。nvidia。com/blog/nvidia-hopper-architecture-in-depth/

TAG: GPUH100HopperSM架構