[パフォーマンスエンジニアリングで実現するAIワークロードの高速化実践セミナー開催のお知らせ - ニュース一覧 - 株式会社フィックスターズ](https://news.fixstars.com/5610/)
H100 -> H200で2.5倍になった話
パフォーマンスエンジニアリングラボ 吉藤尚生さん
- AI学習を少なからずやらなきゃいけなくなった
- メモリ容量がカツカツ
- H200ではメモリが増えたので、2.5倍速
- 5つの観点でのチューニングが必要
- AIBooster製品でチューニング自動化
## AIは使うもの?
- 最先端の人たちはSLMと組み合わせていこうとしている。
- 個別の仕事はむしろ精度が良かったりする
- 未来予想 SLMのカスタマイズ・パーソナライズ
- middle-smallレンジのモデルの学習需要が高まるはず
- 70B(ミドルクラス)の事前学習を題材にする
## AIのサイズ
- 昔は8BですらLLMだが、一桁BはSLM扱い
- 二桁Bがミドル、ラージなのは100B以上
- メモリ使用量が満杯だと、パフォーマンスエンジニアリングの余地がない
- HWがかわったりモデルが小さくなったときが狙い目
- -> H200になるタイミングで今回チューニング
- H200はさくらから借りているもの
## プレスリリース
[フィックスターズ、さくらインターネットが提供する「高火力 PHY」の最新GPU搭載機をAI Boosterでパフォーマンス最大化 \| 株式会社フィックスターズのプレスリリース](https://prtimes.jp/main/html/rd/p/000000073.000027784.html)
- モデル:Llama 3.1 70B
- 学習データセット:RedPajama-Data-1T arXiv
- 分散学習フレームワーク:Megatron-LM
- ロスが目標に到達するまでの学習時間を約60%短縮
以降、未公開の情報。
## パフォーマンスチューニング
- 5つの観点
- マイクロバッチサイズ (MBS)
- 3次元並列 (TP,PP,DP)
- 演算器幅 (fp16, fp8)
- 活性値再計算 (recompute none, full, selective)
- 最適化器 (optimizer adam, sgd)
- 前者4つでスループット向上: x1.7 (0.18 -> 0.31[iter/s])
- 最後の1つでloss収束向上: x1.5 (25k -> 17k [itr])
- あわせてx2.5
最初は観測する。
- 指標1: スループット
- 学習スループット: iter/s (token/sでもok)
- 演算スループット: FLOP/s
- 効率はどれくらいかを見積もる
- 演算スループット / Rpeak(HWのピークFLOP/s)
- 現実的には8割が最大値、LLM学習だと5割ぐらい
- プロファイリングが必要だが割愛
- 指標2: loss vs itr
- ![[Pasted image 20250807123118.png]]
- 同じイテレーションで、最適化器をかえたときに、lossが違う
- イテレーションが減る -> 学習が早い
- Llama 3とかだと fp8やfp16でもlossはかわらない
- 指標3: loss vs time
- ![[Pasted image 20250807123424.png]]
- チューニング1: MBS
- ![[Pasted image 20250807123615.png]]
- チューニング2: 3次元並列
- ![[Pasted image 20250807123717.png]]
- チューニング3: 演算器幅
- ![[Pasted image 20250807123959.png]]
- fp8のほうがメモリ使用量が増える!
- Megatron-LMが追加バッファーを用意する
- 16bitにして他のパラメータ調整しても速くはなからなかった
- チューニング4: 活性値再計算
- ![[Pasted image 20250807124151.png]]
- チューニング5: optimizer
- ![[Pasted image 20250807124353.png]]
- チューニングいつやるか?
- ハードやモデルがかわったときに毎回必要
- メモリ使用量がかわらない変更ってあんまりない
- Fixstars AIBoosterは自動で
- 一晩とか2日かけてほっといたらチューニング
- 今回の結果は3日かけたAIBoosterの結果
- 2週間後にB200のセミナーをさくらと共催でやる。
## Q&A
- テンソルの並列度あげたほうが遅くなるってどういうこと?
- 3次元の組み合わせ次第?
- SLMはチューニングがんばらなくていい?
- 5つの最適化を網羅的に調べるのには、どのくらいの期間が必要でしょうか?
- AI Boosterで3日