NVIDIA安培架構

NVIDIA安培架構

NVIDIA Ampere Architecture In-Depth

在2020年英偉達GTC主題演講中,英偉達創始人兼首席執行官黃仁勳介紹了基於新英偉達安培GPU架構的新英偉達A100 GPU。本文將介紹新的A100 GPU,並描述NVIDIA安培體系結構GPU的重要新功能。

在現代雲數據中心運行的計算密集型應用程序的多樣性推動了NVIDIA GPU加速雲計算的爆炸式增長。這些密集型應用包括人工智能深度學習(AI deep learning,DL)培訓和推理、數據分析、科學計算、基因組學、邊緣視頻分析和5G服務、圖形渲染、雲遊戲等。從擴展人工智能培訓和科學計算,到擴展推理應用程序,再到實現實時對話人工智能,NVIDIA gpu提供了必要的馬力來加速當今雲數據中心中運行的衆多複雜和不可預測的工作負載。

NVIDIA GPU是推動人工智能革命的領先計算引擎,爲人工智能訓練和推理工作提供了巨大的加速。此外,NVIDIA gpu加速了許多類型的HPC和數據分析應用程序和系統,使您能夠有效地分析、可視化數據,並將數據轉化爲見解。NVIDIA加速計算平臺是世界上許多最重要和增長最快的行業的核心。

Introducing the NVIDIA A100 Tensor Core GPU

NVIDIA A100 Tensor Core GPU基於新的NVIDIA安培GPU體系結構,並建立在以前的NVIDIA Tesla V100 GPU的能力之上。它增加了許多新功能,爲HPC、AI和數據分析工作負載提供了顯著更快的性能。

A100爲運行在單個和多個GPU工作站、服務器、集羣、雲數據中心、邊緣系統和超級計算機中的GPU計算和DL應用程序提供了強大的擴展能力。A100 GPU支持構建彈性、多用途和高吞吐量的數據中心。

A100 GPU包括一個革命性的新的多實例GPU(MIG)虛擬化和GPU分區功能,這對雲服務提供商(csp)特別有利。當配置爲MIG操作時,A100允許csp提高其GPU服務器的利用率,以不增加成本的方式提供最多7倍的GPU實例。健壯的故障隔離允許他們安全地劃分單個A100 GPU。

A100增加了一個強大的新的第三代Tensor核心,它在增加了對DL和HPC數據類型的全面支持的同時,還增加了一個新的稀疏特性,使吞吐量進一步增加了一倍。

A100中新的TensorFloat-32(TF32)Tensor Core操作爲在DL框架和HPC中加速FP32輸入/輸出數據提供了一條簡單的途徑,運行速度比V100 FP32 FMA操作快10倍,或在稀疏情況下快20倍。對於FP16/FP32混合精度DL,A100張量核的性能是V100的2.5倍,稀疏性增加到5倍。

新的Bfloat16(BF16)/FP32混合精度張量核運算以與FP16/FP32混合精度相同的速率運行。INT8、INT4和二進制舍入的張量核心加速支持DL推斷,A100稀疏INT8的運行速度比V100 INT8快20倍。對於HPC,A100 Tensor Core包括新的符合IEEE標準的FP64處理,其性能是V100的2.5倍。

NVIDIA A100 GPU的架構不僅可以加速大型複雜工作負載,還可以有效地加速許多較小的工作負載。A100支持構建能夠適應不可預測的工作負載需求的數據中心,同時提供細粒度的工作負載配置、更高的GPU利用率和改進的TCO。

NVIDIA A100 GPU爲人工智能訓練和推理工作負載提供了超過V100的異常加速。

Key features

在臺積電7NMN7製造工藝上製造的基於NVIDIA安培架構的GA100 GPU爲A100供電,包括542億個晶體管,芯片尺寸爲826平方毫米。

A100 GPU streaming multiprocessor

NVIDIA安培體系結構中的新的流多處理器(SM)基於A100張量核GPU顯著提高了性能,建立在Volta和Turing SM體系結構中引入的特性的基礎上,並增加了許多新功能。
A100第三代張量核增強了操作數共享和效率,並添加了強大的新數據類型,包括:

加速處理FP32數據的TF32張量核心指令

符合IEEE標準的HPC FP64張量核指令

與FP16吞吐量相同的BF16張量核心指令
在這裏插入圖片描述
表1. A100張量核心GPU性能規範。

1) 峯值速率基於GPU升壓時鐘。

2) 使用新稀疏特性的有效TFLOPS/TOPS。

在100個張量核中新的稀疏性支持可以利用DL網絡中的細粒度結構稀疏性來加倍張量核操作的吞吐量。稀疏性特徵在本文後面的A100介紹細粒度結構稀疏性一節中有詳細描述。
A100中更大更快的一級緩存和共享內存單元提供的每SM聚合容量是V100的1.5倍(192 KB/SM,128 KB/SM),可爲許多HPC和AI工作負載提供額外的加速。

其他一些新的SM特性提高了效率和可編程性,降低了軟件複雜性。

40 GB HBM2 and 40 MB L2 cache

爲了滿足巨大的計算吞吐量,NVIDIA A100 GPU擁有40gb的高速HBM2內存,其內存帶寬達到1555gb/s,比Tesla V100提高了73%。此外,A100 GPU的片上內存顯著增加,包括一個比V100大近7倍的40MB二級(L2)緩存,以最大限度地提高計算性能。A100二級緩存採用了一種新的分區交叉結構,提供了V100二級緩存讀取帶寬的2.3倍。

爲了優化容量利用率,NVIDIA安培體系結構爲您提供了二級緩存駐留控制,用於管理要保留或從緩存中收回的數據。A100還增加了計算數據壓縮,使DRAM帶寬和二級帶寬提高了4倍,二級容量提高了2倍。

Multi-Instance GPU

新的多實例GPU(MIG)功能允許A100 Tensor Core GPU安全地劃分爲多達七個單獨的GPU實例,用於CUDA應用程序,爲多個用戶提供單獨的GPU資源以加速其應用程序。
使用MIG,每個實例的處理器在整個內存系統中都有獨立的路徑。片上縱橫端口、二級緩存組、內存控制器和DRAM地址總線都是唯一分配給單個實例的。這確保了單個用戶的工作負載可以在相同的二級緩存分配和DRAM帶寬下以可預測的吞吐量和延遲運行,即使其他任務正在衝擊自己的緩存或使DRAM接口飽和。

MIG提高了GPU硬件利用率,同時提供了定義的QoS和不同客戶端(如vm、容器和進程)之間的隔離。MIG對於擁有多租戶用例的csp尤其有利。它確保了一個客戶機不會影響其他客戶機的工作或調度,此外還提供了增強的安全性並允許爲客戶機提供GPU利用率保證。

Third-generation NVIDIA NVLink

第三代NVIDIA高速NVLink互連在A100 GPUs和新NVIDIA nvlswitch中實現,顯著提高了多GPU的可擴展性、性能和可靠性。由於每個GPU和交換機有更多的鏈路,新的NVLink提供了更高的GPU-GPU通信帶寬,並改進了錯誤檢測和恢復功能。

第三代NVLink每個信號對的數據速率爲50gbit/sec,幾乎是V100中25.78gbit/sec速率的兩倍。一個A100NVLink在每個方向上提供25GB/秒的帶寬,與V100類似,但每個鏈路使用的信號對數僅爲V100的一半。鏈路總數在A100中增加到12個,而在V100中增加到6個,從而產生600 GB/秒的總帶寬,而在V100中爲300 GB/秒。

Support for NVIDIA Magnum IO and Mellanox interconnect solutions

A100 Tensor Core GPU與NVIDIA Magnum IO和Mellanox最先進的InfiniBand和以太網互連解決方案完全兼容,可加速多節點連接。

Magnum IO API集成了計算、網絡、文件系統和存儲,以最大限度地提高多GPU、多節點加速系統的I/O性能。它與CUDA-X庫接口,以加速從人工智能和數據分析到可視化等各種工作負載的I/O。

PCIe Gen 4 with SR-IOV

A100 GPU支持PCI Express Gen 4(PCIe Gen 4),通過提供31.5
GB/s而不是15.75 GB/s的x16連接,PCIe 3.0/3.1的帶寬翻了一番。更快的速度對於連接到支持PCIe 4.0的cpu的100 gpu和支持快速網絡接口(例如200gbit/sec InfiniBand)尤其有利。

A100還支持單根輸入/輸出虛擬化(SR-IOV),允許爲多個進程或虛擬機共享和虛擬化單個PCIe連接。

Improved error and fault detection, isolation, and containment

通過檢測、包含並經常糾正錯誤和故障,而不是強制GPU重置,最大化GPU正常運行時間和可用性至關重要。在大型多GPU集羣和單GPU、多租戶環境(如MIG配置)中尤其如此。A100 Tensor Core GPU包括新技術,用於改進錯誤/故障屬性、隔離和遏制,如本文後面深入的架構部分所述。

Asynchronous copy

A100 GPU包括一個新的異步複製指令,該指令將數據直接從全局內存加載到SM共享內存中,從而消除了使用中間寄存器文件(RF)的需要。異步複製減少了寄存器文件帶寬,更有效地使用了內存帶寬,並降低了功耗。顧名思義,異步複製可以在後臺完成,而SM正在執行其他計算。

Asynchronous barrier

A100 GPU在共享內存中提供硬件加速屏障。這些障礙是使用CUDA 11的形式,ISO C++ +符合壁壘對象。異步屏障將屏障到達和等待操作分開,可用於將從全局內存到共享內存的異步副本與SM中的計算重疊。它們可用於使用CUDA線程實現生產者-消費者模型。屏障還提供了同步不同粒度的CUDA線程的機制,而不僅僅是扭曲或塊級別。

Task graph acceleration

CUDA任務圖爲向GPU提交工作提供了一個更有效的模型。任務圖由一系列操作組成,如內存拷貝和內核啓動,這些操作通過依賴關係連接起來。任務圖允許定義一次並重復運行執行流。預定義的任務圖允許在單個操作中啓動任意數量的內核,極大地提高了應用程序的效率和性能。A100增加了新的硬件特性,使任務圖中網格之間的路徑明顯更快。

A100 GPU hardware architecture

NVIDIA GA100 GPU由多個GPU處理集羣(gpc)、紋理處理集羣(tpc)、流式多處理器(SMs)和HBM2內存控制器組成。

GA100 GPU的完整實現包括以下單元:

· 8 GPCs, 8 TPCs/GPC, 2 SMs/TPC, 16 SMs/GPC, 128 SMs per
full GPU

· 64 FP32 CUDA Cores/SM, 8192 FP32 CUDA Cores per full GPU

· 4 third-generation Tensor Cores/SM, 512 third-generation
Tensor Cores per full GPU

· 6 HBM2 stacks, 12 512-bit memory controllers

GA100 GPU的A100 Tensor Core GPU實現包括以下單元:

· 7 GPCs, 7 or 8 TPCs/GPC, 2 SMs/TPC, up to 16 SMs/GPC, 108
SMs

· 64 FP32 CUDA Cores/SM, 6912 FP32 CUDA Cores per GPU

· 4 third-generation Tensor Cores/SM, 432 third-generation
Tensor Cores per GPU

· 5 HBM2 stacks, 10 512-bit memory controllers

A100 SM architecture

新的A100SM顯著提高了性能,建立在Volta和Turing SM體系結構中引入的特性的基礎上,並增加了許多新的功能和增強。

A100 SM圖如圖5所示。Volta和Turing每個SM有8個張量核,每個張量核每個時鐘執行64個FP16/FP32混合精度融合乘法加法(FMA)操作。A100 SM包括新的第三代張量核心,每個核心執行256 FP16/FP32 FMA操作每時鐘。A100每個SM有四個張量核,每個時鐘總共提供1024個密集的FP16/FP32 FMA操作,與Volta和Turing相比,每個SM的計算功率增加了兩倍。

本文簡要強調了SM的主要功能,並在後面的文章中詳細介紹了這些功能:

第三代張量磁芯:

所有數據類型的加速,包括FP16、BF16、TF32、FP64、INT8、INT4和Binary。

新的張量核稀疏特性利用了深度學習網絡中的細粒度結構稀疏性,使標準張量核操作的性能提高了一倍。

A100中的TF32 Tensor核心操作爲在DL框架和HPC中加速FP32輸入/輸出數據提供了一條簡單的途徑,運行速度比V100 FP32 FMA操作快10倍,或在稀疏情況下快20倍。

FP16/FP32混合精度張量核運算爲DL提供了前所未有的處理能力,運行速度比V100張量核運算快2.5倍,稀疏性增加到5倍。

BF16/FP32混合精度張量核心運算的運行速度與FP16/FP32混合精度相同。

FP64 Tensor核心操作爲HPC提供了前所未有的雙精度處理能力,運行速度比V100 FP64 DFMA操作快2.5倍。

具有稀疏性的INT8張量核操作爲DL推理提供了前所未有的處理能力,運行速度比V100 INT8操作快20倍。

192kb的共享內存和L1數據緩存,比V100 SM大1.5x。

新的異步複製指令將數據直接從全局內存加載到共享內存中,可以選擇繞過一級緩存,並且不需要使用中間寄存器文件(RF)。

新的基於共享內存的屏障單元(異步屏障),用於新的異步複製指令。

二級緩存管理和常駐控制的新說明。

CUDA協作組支持的新的扭曲級縮減指令。

許多可編程性改進以降低軟件複雜性。

圖6比較了V100和A100 FP16張量核心操作,還將V100 FP32、FP64和INT8標準操作與各自的A100 TF32、FP64和INT8張量核心操作進行了比較。吞吐量是每個GPU的聚合,A100使用FP16、TF32和INT8的稀疏張量核心操作。左上角的圖顯示了兩個V100 FP16張量核,因爲V100 SM每個SM分區有兩個張量核,而A100 SM分區有兩個張量核。
在這裏插入圖片描述
Figure 6. A100 Tensor Core operations compared to V100 Tensor Core and standard operations for different data types.
在這裏插入圖片描述
Figure 7. TensorFloat-32 (TF32) provides the range of FP32 with the precision of FP16(left). A100 accelerates tensor math with TF32 while supporting FP32 input and output data (right), enabling easy integration into DL and HPC programs and automatic acceleration of DL frameworks.

今天,人工智能訓練的默認數學是FP32,沒有張量核心加速度。NVIDIA安培體系結構引入了對TF32的新支持,使得人工智能訓練在默認情況下可以使用張量核,而用戶不必費勁。在產生標準IEEE FP32輸出之前,非張量操作繼續使用FP32數據路徑,而TF32張量核讀取FP32數據並使用與FP32相同的範圍,同時降低內部精度。TF32包括8位指數(與FP32相同)、10位尾數(與FP16精度相同)和1個符號位。

與Volta一樣,自動混合精度(AMP)使您能夠使用FP16的混合精度進行人工智能訓練,只需更改幾行代碼。使用AMP,A100提供比TF32快2倍的張量核心性能。

綜上所述,用戶對NVIDIA安培架構數學進行DL培訓的選擇如下:

默認情況下,使用TF32張量核,不調整用戶腳本。與A100上的FP32相比,吞吐量高出8倍;與V100上的FP32相比,吞吐量高出10倍。

應使用FP16或BF16混合精度訓練以獲得最大訓練速度。與TF32相比,吞吐量增加了2倍,與A100上的FP32相比,吞吐量增加了16倍,與V100上的FP32相比,吞吐量增加了20倍。

A100張量核加速高性能混凝土

高性能計算機應用的性能需求正在迅速增長。許多科學和研究領域的應用都依賴於雙精度(FP64)計算。

爲了滿足HPC計算快速增長的計算需求,A100 GPU支持張量運算,加速符合IEEE標準的FP64計算,使FP64的性能達到NVIDIA Tesla V100 GPU的2.5倍。

A100上新的雙精度矩陣乘法加法指令取代了V100上的8條DFMA指令,減少了指令獲取、調度開銷、寄存器讀取、數據路徑功率和共享內存讀取帶寬。

A100中的每個SM總共計算64個FP64 FMA操作/時鐘(或128個FP64操作/時鐘),是特斯拉V100吞吐量的兩倍。A100 Tensor Core GPU具有108條短信息,峯值FP64吞吐量爲19.5tflops,是Tesla V100的2.5倍。

有了對這些新格式的支持,A100張量核可以用於加速HPC工作負載、迭代求解器和各種新的AI算法。
在這裏插入圖片描述
Table 2. A100 speedup over V100 (TC=Tensor Core, GPUs at respective clock speeds).

  1. Effective TOPS / TFLOPS using the new Sparsity feature

A100 introduces fine-grained structured sparsity

NVIDIA使用A100 GPU引入了細粒度結構稀疏性,這是一種新的方法,可以使深部神經網絡的計算吞吐量翻倍。

在深度學習中,稀疏性是可能的,因爲個體權重的重要性在學習過程中不斷演化,到網絡訓練結束時,只有一個子集的權重在確定學習輸出時獲得了有意義的目的。剩下的權重不再需要了。

細粒度結構稀疏性對允許的稀疏性模式施加了約束,使硬件更有效地對輸入操作數進行必要的對齊。由於深度學習網絡能夠在基於訓練反饋的訓練過程中自適應權值,NVIDIA工程師發現,結構約束一般不會影響訓練網絡的推理精度。這使得能夠以稀疏性推斷加速度。

對於訓練加速,需要在訓練過程的早期引入稀疏性以提供性能效益,而訓練加速而不損失精度的方法是一個活躍的研究領域。

稀疏矩陣定義

結構是通過一個新的2:4稀疏矩陣定義來實現的,該定義允許每四個入口向量中有兩個非零值。A100支持行上2:4的結構化稀疏性,如圖9所示。

由於矩陣結構清晰,因此可以有效地壓縮它,並將內存存儲和帶寬減少近2倍。
在這裏插入圖片描述
Figure 9. A100 fine-grained structured sparsity prunes trained weights with a 2-out-of-4 non-zero pattern, followed by a simple and universal recipe for fine-tuning the non-zero weights. The weights are compressed for a 2x reduction in data footprint and bandwidth, and the A100 Sparse Tensor Core doubles math throughput by skipping the zeros.

NVIDIA開發了一個簡單而通用的方法,用這種2:4結構的稀疏模式來稀疏化深層神經網絡進行推理。該網絡首先使用稠密權值進行訓練,然後應用細粒度結構化剪枝,最後通過附加的訓練步驟對剩餘的非零權值進行微調。這種方法實際上不會導致基於橫跨視覺、對象檢測、分割、自然語言建模和翻譯的數十個網絡的評估的推斷精度損失。

A100 Tensor-Core GPU包含新的稀疏Tensor-Core指令,這些指令跳過值爲零的條目的計算,從而使Tensor-Core計算吞吐量加倍。圖9顯示了Tensor Core如何使用壓縮元數據(非零索引)將壓縮的權重與爲輸入到Tensor Core點積計算而適當選擇的激活相匹配。

Combined L1 data cache and shared memory

首先在NVIDIA Tesla V100中引入的NVIDIA將L1數據緩存和共享內存子系統架構相結合,顯著提高了性能,同時還簡化了編程並減少了達到峯值或接近峯值應用程序性能所需的調整。將數據緩存和共享內存功能組合到單個內存塊中,爲這兩種類型的內存訪問提供最佳的總體性能。

一級數據緩存和共享內存的組合容量在A100中爲192 KB/SM,而在V100中爲128 KB/SM。

Simultaneous execution of FP32 and INT32 operations

與V100和Turing gpu類似,A100 SM還包括單獨的FP32和INT32內核,允許以全吞吐量同時執行FP32和INT32操作,同時也增加了指令發出吞吐量。

許多應用程序都有執行指針算術(整數內存地址計算)的內部循環,這些內部循環與浮點計算結合使用,可從同時執行FP32和INT32指令中獲益。流水線循環的每次迭代都可以更新地址(INT32指針算法)併爲下一次迭代加載數據,同時在FP32中處理當前迭代。

A100 HBM2 DRAM subsystem

隨着HPC、AI和分析數據集的不斷增長以及尋找解決方案的問題變得越來越複雜,需要更多的GPU內存容量和更高的內存帶寬。

特斯拉P100是世界上第一個支持高帶寬HBM2存儲技術的GPU架構,而特斯拉V100提供了更快、更高效、更大容量的HBM2實現。A100再次提高了HBM2的性能和容量。

HBM2內存由與GPU位於同一物理包上的內存堆棧組成,與傳統的GDDR5/6內存設計相比,它提供了大量的功耗和麪積節省,允許在系統中安裝更多的GPU。有關HBM2技術基本細節的更多信息,請參閱NVIDIA Tesla P100:有史以來最先進的數據中心加速器白皮書。

A100 GPU的SXM4型電路板上有40GB的快速HBM2 DRAM內存。內存被組織爲五個活動的HBM2堆棧,每個堆棧有八個內存片。A100 HBM2具有1215 MHz(DDR)的數據速率,可提供1555 GB/秒的內存帶寬,比V100內存帶寬高出1.7倍以上。

ECC內存彈性

A100 HBM2存儲子系統支持單糾錯雙糾錯碼(SECDED)糾錯碼(ECC)保護數據。ECC爲對數據損壞敏感的計算應用程序提供了更高的可靠性。在大規模集羣計算環境中,gpu處理大型數據集或長時間運行應用程序時,它尤其重要。A100中的其他密鑰存儲結構也受到SECDED ECC的保護,包括二級緩存和一級緩存以及所有短消息中的註冊文件。

A100 L2 cache

A100 GPU包含40 MB的二級緩存,比V100二級緩存大6.7倍緩存二級緩存分爲兩個分區,以實現更高的帶寬和更低的延遲內存訪問。每個二級分區定位和緩存數據,以便從直接連接到分區的gpc中的SMs進行內存訪問。這種結構使A100能夠提供比V100高2.3x的L2帶寬。硬件緩存一致性在整個GPU中維護CUDA編程模型,應用程序自動利用新的二級緩存的帶寬和延遲優勢。

二級緩存是GPC和SMs的共享資源,位於GPC之外。A100 L2緩存大小的大幅增加顯著提高了許多HPC和AI工作負載的性能,因爲現在可以以比讀取和寫入HBM2內存快得多的速度緩存和重複訪問更大部分的數據集和模型。一些受DRAM帶寬限制的工作負載將受益於較大的二級緩存,例如使用小批量的深度神經網絡。

爲了優化容量利用率,NVIDIA安培體系結構爲您提供了二級緩存駐留控制,用於管理要保留或從緩存中收回的數據。您可以爲持久數據訪問預留一部分二級緩存。

例如,對於DL推斷工作負載,ping-pong緩衝區可以持久地緩存在L2中,以便更快地訪問數據,同時還可以避免對DRAM的寫回。對於生產者-消費者鏈(如在DL培訓中發現的那些),二級緩存控件可以跨寫-讀數據依賴關係優化緩存。在LSTM網絡中,遞歸權重可以優先緩存並在L2中重用。

NVIDIA-Ampere體系結構增加了計算數據壓縮,以加速非結構化稀疏性和其他可壓縮數據模式。二級壓縮可使DRAM讀/寫帶寬提高4倍,二級讀取帶寬提高4倍,二級容量提高2倍。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

Table 3. Comparison of NVIDIA data center GPUs.

  1. Peak rates are based on the GPU boost clock.

  2. Four Tensor Cores in an A100 SM have 2x the raw FMA
    computational power of eight Tensor Cores in a GV100 SM.

  3. Effective TOPS / TFLOPS using the new Sparsity feature.

注:由於A100 Tensor Core GPU設計用於安裝在高性能服務器和數據中心機架中,爲AI和HPC計算工作負載供電,因此它不包括顯示連接器、用於光線跟蹤加速的NVIDIA RT內核或NVNC編碼器。

Compute capability

A100 GPU支持新的計算能力8.0。表4比較了NVIDIA GPU體系結構的不同計算能力的參數。
在這裏插入圖片描述
在這裏插入圖片描述
Table 4. Compute Capability: GP100 vs. GV100 vs. GA100.

MIG architecture

儘管許多數據中心工作負載在規模和複雜性上都在不斷擴展,但一些加速任務並沒有那麼苛刻,例如早期開發或在低批量大小的簡單模型上進行推理。數據中心管理者的目標是保持高資源利用率,因此一個理想的數據中心加速器不僅會變得很大,還會有效地加速許多較小的工作負載。

新的MIG特性可以將每個A100劃分爲多達7個GPU實例以獲得最佳利用率,有效地擴展了對每個用戶和應用程序的訪問。

圖10顯示了Volta MPS如何允許多個應用程序在單獨的GPU執行資源(SMs)上同時執行。但是,由於內存系統資源在所有應用程序之間共享,如果一個應用程序對DRAM帶寬有很高的要求,或者其請求超額訂閱了二級緩存,則可能會干擾其他應用程序。

圖11中所示的A100 GPU新的MIG功能可以將單個GPU劃分爲多個GPU分區,稱爲GPU實例。每個實例的短消息在整個內存系統中都有獨立的路徑——片上縱橫端口、二級緩存組、內存控制器和DRAM地址總線都是唯一分配給單個實例的。這確保了單個用戶的工作負載可以在相同的二級緩存分配和DRAM帶寬下以可預測的吞吐量和延遲運行,即使其他任務正在衝擊自己的緩存或使DRAM接口飽和。

使用此功能,MIG可以對可用的GPU計算資源進行分區,以便爲不同的客戶端(如vm、容器、進程等)提供具有故障隔離的定義服務質量(QoS)。它允許多個GPU實例在單個物理A100 GPU上並行運行。MIG還保持CUDA編程模型不變,以最小化編程工作量。

csp可以使用MIG來提高其GPU服務器上的利用率,以不增加成本的方式提供最多7倍的GPU實例。MIG支持csp所需的必要的QoS和隔離保證,以確保一個客戶端(VM、容器、進程)不會影響另一個客戶端的工作或調度。

csp通常根據客戶使用模式來劃分硬件。只有當硬件資源在運行時提供一致的帶寬、適當的隔離和良好的性能時,有效的分區才起作用。

使用基於NVIDIA安培體系結構的GPU,您可以在新的虛擬GPU實例上查看和調度作業,就像它們是物理GPU一樣。MIG與Linux操作系統及其管理程序協同工作。用戶可以使用諸如Docker Engine之類的運行時運行帶有MIG的容器,並且很快就會支持使用Kubernetes的容器編排。
在這裏插入圖片描述
Figure 10. CSP Multi-user node today (pre-A100). Accelerated GPU instances are available for usage only at full physical GPU granularity for users in different organizations, even if the user applications don’t require a full GPU.
在這裏插入圖片描述
Figure 11. CSP multi-user with MIG diagram. Multiple independent users from the same or different organizations can be assigned their own dedicated, protected, and isolated GPU Instance within a single physical GPU.

錯誤和故障檢測、隔離和控制

通過檢測、包含並經常糾正錯誤和故障,而不是強制GPU重置,提高GPU的正常運行時間和可用性至關重要。這在大型、多GPU集羣和單GPU、多租戶環境(如MIG配置)中尤其重要。

NVIDIA安培體系結構A100 GPU包括改進錯誤/故障歸因的新技術(對導致錯誤的應用程序進行屬性化)、隔離(隔離故障應用程序,使其不影響在同一GPU或GPU集羣中運行的其他應用程序),和包容(確保一個應用程序中的錯誤不會泄漏並影響其他應用程序)。這些故障處理技術對於MIG環境尤其重要,以確保共享單個GPU的客戶端之間的正確隔離和安全性。

NVLink連接的gpu現在具有更強大的錯誤檢測和恢復功能。遠程GPU上的頁面錯誤通過NVLink發送回源GPU。遠程訪問故障通信是大型GPU計算集羣的一個重要恢復功能,有助於確保一個進程或VM中的故障不會導致其他進程或VM宕機。

A100 GPU還包括其他一些新的和改進的硬件功能,可以提高應用程序性能。有關更多信息,請參閱即將發佈的NVIDIA A100 Tensor Core GPU體系結構白皮書。

CUDA11 advances for NVIDIA Ampere architecture GPUs

在NVIDIA-CUDA並行計算平臺上構建了數千個GPU加速應用程序。CUDA的靈活性和可編程性使其成爲研究和部署新的DL和並行計算算法的首選平臺。

NVIDIA安培體系結構GPU旨在提高GPU的可編程性和性能,同時降低軟件複雜性。NVIDIA安培體系結構gpu和CUDA編程模型的發展加速了程序執行,降低了許多操作的延遲和開銷。
新的CUDA 11特性爲第三代Tensor核、稀疏性、CUDA圖、多實例gpu、L2緩存駐留控制以及NVIDIA-Ampere體系結構的其他一些新功能提供編程和API支持。

有關新CUDA功能的更多信息,請參閱即將發佈的NVIDIA A100 Tensor Core GPU體系結構白皮書。有關新DGX A100系統的詳細信息,請參見使用NVIDIA DGX A100定義AI創新。有關開發人員區域的更多信息,請參閱NVIDIA Developer,有關CUDA的更多信息,請參閱新的CUDA編程指南。

Conclusion

英偉達的使命是加速我們這個時代的達芬奇和愛因斯坦的工作。科學家、研究人員和工程師致力於利用高性能計算(HPC)和人工智能解決一些世界上最重要的科學、工業和大數據挑戰。

NVIDIA A100 Tensor Core GPU爲我們的加速數據中心平臺帶來了下一個巨大的飛躍,在每個規模上都提供了無與倫比的加速,使這些創新者能夠在一生中完成他們一生的工作。A100爲許多應用領域提供動力,包括HPC、基因組學、5G、渲染、深度學習、數據分析、數據科學和機器人技術。

推進當今最重要的HPC和AI應用個性化醫療、對話式AI和深度推薦系統需要研究人員做大。A100爲包括Mellanox HDR InfiniBand、NVSwitch、NVIDIA HGX A100和Magnum IO SDK在內的NVIDIA數據中心平臺提供了升級功能。這個集成的技術團隊有效地擴展到數以萬計的gpu,以前所未有的速度訓練最複雜的AI網絡。

A100 GPU的新MIG功能可以將每個A100劃分爲多達7個GPU加速器,以實現最佳利用率,有效地提高GPU資源利用率和GPU對更多用戶和GPU加速應用程序的訪問。通過A100的多功能性,基礎設施管理人員可以最大限度地利用其數據中心中的每個GPU,以滿足不同規模的性能需求,從最小的作業到最大的多節點工作負載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章