GH100はA100世代からFP32とFP64の数が倍増
学習精度を1%犠牲にするだけで性能が2倍に上がる
ここからもう少し詳細を説明しよう。まずはGH100そのものについてである。GH100の内部構造が下の画像だ。全体で144のSM(Streaming Multiprocessor)が8つのGPC(GPU Processing Clusters)に分かれて実装されている。
GH100の内部構造。全体で144のSMが8つのGPCに分かれている。きっちりGPCで割り切れないので、あるGPCは18SM、別のGPCは17とか16SMというケースもあり得る。現実問題としては、17SMのGPCと16SMのGPCがそれぞれ4つづつ、あたりが一般的であろう。なおGA100も実際には108SMのみ有効である
つまりGPCあたり18SM構成になる計算だ。前世代のA100が128SMを8GPCまとめており、つまりGCPあたり16SMだったので、2SMほど増えている計算になる。
ちなみに上の画像にもあるように、全体では144SMながら実際に有効なのはこのうち132SMで、12SMほど減っているのは冗長コアを意識しているためだろう。さすがに800mm2で欠陥0、というダイの歩留まりは相当低いと考えられるためだ。
またSM自身も猛烈に強化された。GH100のSMが下の画像だ。A100世代がその下の画像であるが、以下のようになる。
- INT32の数は同じながら、FP32の数が倍増した
- FP64の数も倍増した
- Tensor Coreが第4世代になった
- 1次キャッシュと共有メモリーが、A100世代の192KBから256KBに増加した
- DPX命令セットを新たに搭載
- Thread Block Cluster、Tensor Memory Acceleratorを新規に搭載
この結果として、FP32やFP64では、同じ動作周波数でGA100とGH100を比較すると2.44倍の演算性能となり、加えてTSMC 4Nプロセスの採用で動作周波数を引き上げたことでほぼ3倍の性能になる、とされている。
A100がベース1095MHz/ブースト1410MHzとなっており、ここから考えるとGH100(というより、H100 SMX5)はベースは不明だがブーストで1730MHz程度で動作するものと考えられる。
第4世代のTensor Coreの説明が下の画像だ。ざっくり言えばすべての演算型で2倍のスループットを実現しており、加えて新しくFP8をサポートしたのがその違いである。
そのFP8であるが、E5M2(仮数部2bit、指数部5bit)とE4M3(仮数部3bit、指数部4bit)の2種類のフォーマットである。
余った1bitで、どっちのフォーマット(E5M2とE4M3)なのかを指定する模様。ということは、符号なしになるという話である。Int 2やInt 4に、指数が付いたという感じになるので、符号は不要な気は確かにする。また既存のフォーマットからの変換も当然サポートされている
こんなに少なくて大丈夫か? という話もあるが、実際Int 1/2/4のネットワークは実際に広く使われ始めており、それなりに精度が維持できていることを考えると、万能ではないにしてもこれでさらに高速化が図れるネットワークは実際に存在するだろう。
こちらではFP16の2倍の速度で演算できるため、データ精度が落ちてもその分演算速度を引き上げることで最終的な演算精度を落とさずにカバーできる。このFP8は別にNVIDIAの発明というわけではなく、2019年にIBM Researchが発表しており、ほとんどFP32と同じ演算精度を保てていることを示している。
このFP8を、既存のネットワークで後追いで使えるようにするのが、Transformer Engineである。これは既存のネットワーク向けにTensor Coreに対して作用し、これまでFP16やFP32などで処理されていたデータについてRange Analyzerというユニットでその値の範囲を分析、E5M2とE4M3のどちらのフォーマットを使うかを自動的に決定してFP8で処理するという仕組みである。
これはTransparent、つまり既存のネットワークそのままで実施できる仕組みになっており、ユーザーはこのTransformer EngineをOn/Offするだけの操作である。このFP8を使った場合の精度をBF16と比較したのが下の画像だ。
これは自然言語解析モデルのGPT-3を利用しての場合の数字で、実線がBF16、破線がFP8である。学習件数別に当然誤認識率は変わる(1.26億件程度ではあまり精度が向上しないが、13億件以降は明確に下がる。もっともそれを220億件やっても、すさまじく賢くなるわけでもない)が、これはGPT-3そのものの問題である。
ここで言いたいのは、BF16(実線)とFP8(破線)が学習件数別にみてもほぼ傾向が同じ(精度の差は1%程度)で、精度を1%犠牲にするだけで性能が2倍に上がるということだ。しかもFP8で学習をさせるにあたり、量子化のやり直しやファインチューニングが一切要らない、というのが大きなメリットであるとする。

この連載の記事
-
第852回
PC
Google最新TPU「Ironwood」は前世代比4.7倍の性能向上かつ160Wの低消費電力で圧倒的省エネを実現 -
第851回
PC
Instinct MI400/MI500登場でAI/HPC向けGPUはどう変わる? CoWoS-L採用の詳細も判明 AMD GPUロードマップ -
第850回
デジタル
Zen 6+Zen 6c、そしてZen 7へ! EPYCは256コアへ向かう AMD CPUロードマップ -
第849回
PC
d-MatrixのAIプロセッサーCorsairはNVIDIA GB200に匹敵する性能を600Wの消費電力で実現 -
第848回
PC
消えたTofinoの残響 Intel IPU E2200がつなぐイーサネットの未来 -
第847回
PC
国産プロセッサーのPEZY-SC4sが消費電力わずか212Wで高効率99.2%を記録! 次世代省電力チップの決定版に王手 -
第846回
PC
Eコア288基の次世代Xeon「Clearwater Forest」に見る効率設計の極意 インテル CPUロードマップ -
第845回
PC
最大256MB共有キャッシュ対応で大規模処理も快適! Cuzcoが実現する高性能・拡張自在なRISC-Vプロセッサーの秘密 -
第844回
PC
耐量子暗号対応でセキュリティ強化! IBMのPower11が叶えた高信頼性と高速AI推論 -
第843回
PC
NVIDIAとインテルの協業発表によりGB10のCPUをx86に置き換えた新世代AIチップが登場する? -
第842回
PC
双方向8Tbps伝送の次世代光インターコネクト! AyarLabsのTeraPHYがもたらす革新的光通信の詳細 - この連載の一覧へ
















