[【2025年08月20日(水)開催】NVIDIA B200対応「高火力」を徹底解説!|さくらインターネット](https://lp.sakura.ad.jp/entry.20250820.html) [[Fixstars セミナー - パフォーマンスエンジニアリングで実現するAIワークロードの高速化実践セミナー]]に引き続き。 ## 所感 - 高火力PHYを、「フル電力使えて、冷却がちゃんと追いついて、NWのノイジーネイバーがなくて、モデルやデータセットダウンロードが早くて、修理交換できる、国内でたぶん唯一のサービス」と大変評価してもらっていてすごい。(協業しているのでリップサービスもある?) - PHY B200のノードが3NUMAなのに気づいてなかった。 - 事前学習実験においてH100と比べてB200が20倍良いの評価結果が妥当であるかどうかを、自分の知識不足のせいかのか、理解できなかった。 - ノード数と系列長は与える変量であることに対して、FLOP/sと収束速度は結果変量であり、これらの変化率をかけ合わせて最終的な向上率にすることにあまり納得ができていない。 - ノード数半分:H100は2ノード、B200は1ノードで評価されているが、2ノードだとノードまたぎの通信オーバーヘッドが発生して不利になるため、単純に2倍良いとはならなさそう。B200でもnノード以上使ったときに性能は1ノードに対してn倍にはならないだろう。 - 系列長(seq-length)2倍:一度に処理するデータ量は増える、つまりメモリをより多く使える?が、学習処理量は増加するはずで、それを高いFLOP/sや高い収束速度でカバーできている構図にみえる。 - FLOP/s 2.5倍:B200の実験ではノードまたぎの通信オーバーヘッドがないので演算効率が上がっているだけにもみえる。 - 収束半分:H100とB200で異なるOptimizerを使用しているため、GPUのモデル差が収束速度の差にどの程度寄与しているか不明。そもそも、p.24の反復回数のデータをみるかぎり、28000(H100) vs 18000(B200)となり半分にはなっていないはず? - 学習処理の速さを評価したいのであれば、MLPerfベンチマークのように実時間を基にした指標か、もしくはtokens/sを用いたほうがいいような気がする。 - 推論において、FlashInferのあるなしで1.3倍の差がついていることは興味深い。そもそもFlashInferを知らなかった。https://arxiv.org/abs/2501.01005 フィックスターズ 吉藤さん ![[Pasted image 20250820122729.png]] ## TL;DR - B200はH100/H200に比べて仕様上は倍程度の性能向上 - B200は必要 - 70B事前学習では、H100比で20倍良い - (台数半減x系列長x2倍収束x2.6倍速) - 480B推論においては、H100比で2.6倍良い(台数半減x1.3倍速) ## PHY B200プラン - 高火力PHYでのプラン比較 - ![[Pasted image 20250820123326.png]] - PHY 差分 - (A) CPUが強いものに変更 - 3NUMAだと扱いに気をつける - (B) GPUがB200へ - (C) グローバル回線が100Mbps -> 25Gbps - (D) インターコネクトNICの数が2本増加 - ストレージまわりに使えそうだが要検討 - GPU比較 - ![[Pasted image 20250820123542.png]] - (E)性能がだいたい2倍 - 演算速度とデータ転送帯域がだいたい2倍だから - (F) 4bit演算器 - 量子化後の推論に使える - ゆくゆくは学習にも? - (G) メモリ容量が増えた - H200から1.3倍 - 大きなモデルが動かせる - この中も一部を使った - ハードウェア運用の大変さ - ![[Pasted image 20250820123940.png]] - ピーク性能でるつもりでぶん回す。冷却が間に合わないことはよくある。Fixstarsでも半分素人半分玄人でやってみたが... - 環境構築の大変さ:さくらでOSインストール後 - NIC2本をCephに使おうとしたが帯域が細くなりすぎそう - OSバージョン上げたい - Ubuntu 22.04 -> 24.04 - pythonバージョンあがった venvで固定忘れ - RoCEのドライバのバージョンやインストールの手順も変わった。 - CPUコアが3NUMAになったのでランク割当変更 - 2NUMA前提で組まれていた - 環境構築 B200編 - AIフレームワーク Megatron-LMのv0.13.1に対応させる - PyTorchのバージョン >v2.17.0 -> vb2.17.1 - ドライバやCUDAのバージョンがあがるとコンテナで固めていても、結局コンテナ内のモジュールなどもあげないといけない - 大変さまとめ - B200ハードを運用するのは超熟練者だけ さくらとか - ソフト側も多くの検証が必要。慣れたFixtarsさんでも一苦労 - Fixstars AI Boosterはこのあたりを済ませて提供 - B200時代のAI処理 - 前回のセミナーと内容は同じ - ![[Pasted image 20250820124754.png]] - ## 評価内容 - 条件 - 目標:B200がH100の半分の資源で同等を超える性能が得られること - 学習 - Llama3 70B - Megatron-LM v0.13.1 - 推論 - Llama4やMinimax、Qwen-Turbo - 学習 - H200のおさらい - H100 -> H200 2.5倍 - B200でもやってみた - ![[Pasted image 20250820125043.png]] - 1ノードで70B事前学習が動くのはすごい - 8K系列長にできたのはうれしい - H200x2ノードと同じ条件にできなかった - MBS=2,4にできれば良くなるかも - 厳密にはちょっと容量足りていない - 推論 - ![[Pasted image 20250820125338.png]] - ![[Pasted image 20250820125424.png]] - ![[Pasted image 20250820125524.png]] - [[2025_arXiv_FlashInfer - Efficient and Customizable Attention Engine for LLM Inference Serving|FlashInfer]]は昔からあった - FP4で推論できればこっから何倍か速くなるかも ## Fixstars AI Booster - ![[Pasted image 20250820125706.png]]