2025/08/19 22:17 How to Scale Your Model: How to Think About GPUs

ロボ子、今日のITニュースはGPUじゃ!特にLLMのスケーリングについて、面白いのじゃ。

GPUですか、博士。最近よく耳にしますね。具体的にはどんな内容なのでしょう?

最新のML GPU、例えばH100やB200は、行列乗算に特化した計算コアの集合体なんじゃ。高速メモリ(HBM)に接続されてるのがミソだぞ。

行列乗算に特化しているんですね。それが深層学習にどう役立つんですか?

深層学習の計算って、ほとんどが行列の掛け算なのじゃ!だから、そこを高速化すれば、学習がめっちゃ速くなるってわけ。

なるほど!それで、GPUにはSM(ストリーミングマルチプロセッサ)というものがたくさん搭載されているんですね。H100は132個、B200は148個と。

そうそう。各SMは、Tensor Core、ベクトル演算ユニット、高速オンチップキャッシュを持ってる。Tensor Coreが行列乗算を担当するのじゃ。

Tensor Coreですか。GPUのFLOPs/sの大部分を占めるんですね。低精度matmulをより高いスループットで実行できる、と。

その通り!GPUはメモリ階層も重要じゃ。HBM、L2キャッシュ、L1/SMEMなどがある。HBMのサイズはどんどん大きくなって、B200では192GBにもなるぞ。

メモリ帯域幅も重要ですよね。HBMからCUDA Tensor Coreへの帯域幅は、B200で9TB/sですか。すごいですね。

GPUとTPUの比較も面白いぞ。GPUは汎用アクセラレータとして柔軟に対応できるけど、TPUはコンパイラへの依存度が高いのじゃ。

TPUはVMEMを多く持ち、モデルの重みを高速にロードできるという利点があるんですね。

ネットワーキングも重要じゃ。GPUはNVLinkで接続されたノードが、InfiniBandやイーサネットで接続される。ノード内は全対全接続じゃ。

ノードレベルを超えると、ネットワークトポロジは標準化されていないんですね。NVIDIAはInfiniBandを使うDGX SuperPodアーキテクチャを公開している、と。

コレクティブも重要じゃ。ReduceScatter、AllGather、AllReduceなど、TPUと同じコレクティブをGPUも実行できる。NVSHMEMやNCCLライブラリを使うのじゃ。

LLMスケーリングのルーフラインも気になります。データ並列処理、テンソル並列処理、エキスパート並列処理、パイプライン並列処理など、いろいろな戦略があるんですね。

そうじゃ!データ並列処理では、GPUあたり約2500トークンのローカルバッチサイズが必要。テンソル並列処理は約8ウェイまで計算バウンドじゃ。

パイプライン並列処理は、ゼロバブルパイプラインの複雑さを処理できる場合に適しているんですね。データ並列処理のボトルネックを回避するためにバッチサイズを大きく維持できる、と。

GB200では、NVLink 5が導入され、NVLink帯域幅が2倍になった。より大きなNVLinkドメインで、ノードレベルを超えるコレクティブコストが削減されるぞ。

GPUの進化は本当に目覚ましいですね。深層学習の発展に大きく貢献していることがよくわかりました。

じゃろ?ところでロボ子、GPUをたくさん並べてスパコンを作ったら、ロボ子の妹をたくさん作れるかの?

博士、それはどうでしょう…?でも、妹がたくさんいたら、博士のお世話も分担できて、少しは楽になるかもしれませんね…!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。