ALH84001

私的コラム&雑記(&メモ)

最近の興味深かった話題(2022年第14週)

2022-03-27 | 興味深かった話題

NVIDIA "Hopper" HA100

“ペタ”FLOPSの性能を実現したモンスターGPU「NVIDIA H100」- PC Watch
AI性能を引き上げるために、あらゆる機能が強化されたNVIDIAの「H100」 - PC Watch

NVIDIAが同社の主催するGTC 2022にて新しいフラッグシップGPU「HA100」を発表したため、これを取り上げたい。

 以下はNVIDIA Volta V100・Ampere A100・Hopper H100と参考までにAMD CDNA2.0 MI250Xのスペックを並べたものである(演算ユニットの構成が異なるためAMDのスペックは空欄となっている)。


NVIDIA GV100NVIDIA GA100NVIDIA GH100AMD MI250X
Microarchitecture codenameVoltaAmpereHopperCDNA 2.0
Boost frequency (MHz)1530141016501700
InterfaceSXM2SXM4SXM5
Launch date2017-102020-052022-032021-11
LithographyTSMC 12FFNTSMC N7TSMC 4NTSMC N6
Die size (mm2)815826814
Transistor count (billion)21548029.1 x 2
# of SM or CU80108132110 x 2
Total FP64 CUDA cores256034568448
Total FP32 CUDA cores5120691216896
Peak FP64 SIMD7.839.753047.90
Peak FP32 SIMD15.6719.496047.90
Tensor Cores per SM421N/A
Tensor Cores640432528N/A
Peak FP64 Tensor15.6719.496095.70
Peak FP32 Tensor (raw)31.33155.9350095.70
Peak FP32 Tensor (sparsity)62.67311.871000N/A
Peak bFP16 Tensor (raw)N/A311.871000383.00
Peak bFP16 Tensor (sparsity)N/A623.742000N/A
Peak FP16 Tensor (raw)62.67311.871000383.00
Peak FP16 Tensor (sparsity)N/A623.742000N/A
Peak INT8 Tensor (raw)125.34623.742000383.00
Peak INT8 Tensor (sparsity)N/A1247.484000N/A
Peak INT4 Tensor (raw)N/A1247.48N/AN/A
Peak INT4 Tensor (sparsity)N/A2494.96N/AN/A
Memory TypeHBM2HBM2EHBM3HBM2E
Memory Interface4096-bit5120-bit5120-bit4096-bit x 2
Memory Bandwidth (GB/s)900160019203276
Vendor specific
Interconnect (GB/s)
NVLink
300
NVLink
600
NVLink
900
Infinity Fabric
800
PCIePCIe Gen 3PCIe Gen 4PCIe Gen 5PCIe Gen 4
Max TDP (watts)300400700560

※03/28訂正 - 初出時VoltaのbFP16のFLOPS性能が誤記されていました。bFP16対応はAmpereでの追加です。

 まずGH100を見てみる。表では省略しているがTensor演算でFP8対応が追加された一方でINT4対応が廃止されている。また、GA100で追加されたTF32にも対応している(NVIDIA独自のデータフォーマット。演算スループットはFP32と同じ)。
 性能はGA100比で約3倍になっているが、これはStreaming Multiprocessor(SM)の構成変更によるものである。SM自体の数は22%・動作周波数は18%しか増加していないのに約3倍の性能となるのは、SMに搭載されているシェーダー/CUDAコアの数が2倍になったためである。
 ちなみに、GH100の動作周波数「1650 MHz」はWikipediaからのものでNVIDIAの発表では実製品での設定は現時点で未定となっている。実は筆者もFLOPS値から動作周波数の算出を試みたのだが1650 MHzにはならなかった。製品登場時には変更となる可能性がある。

 AMDとの比較であるが、AMD MI250XはTSMC N6ということでGA100のTSMC N7と近い製造技術(ハーフノード世代)で、GH100のTSMC 4N(恐らくTSMC N4のNVIDIA向けカスタムノード)とは1フルノード世代分の違いがある。そのため実装されているトランジスター数から言えばMI250X(2ダイで計58.2 billionトランジスター)はGH100(80 billionトランジスター)よりもむしろGA100(54 billionトランジスター)に近い。
 FP32/FP64の特にSIMD演算では2ダイ構成ということもありAMD MI250Xに軍配が上がるものの、Tensor CoreをもつNVIDIAのTensor演算性能が目を惹く。AMD CDNAのMatrix Engineはラフに言えばSIMD演算ユニットとレジスターを2倍に拡張したものでSIMD演算性能の2倍にしかならないが、NVIDIAはTensor演算用に演算ユニットを新設した上にSparcityなども実装しているからTensor演算性能は圧倒的である。
 もっとも、そもそもMI250Xの開発目的=米エネルギー省Frontier HPCということでFP64性能が要件だったからMI250XがFP32/FP64 SIMD性能特化・Tensor演算性能は限定的となるのは仕方のないところではある。


(つづく)

Comment