## Memo ## Memo with LLM ### 論文情報 - **論文タイトル**: Robust LLM Training Infrastructure at ByteDance - **著者と所属**: Borui Wan, Gaohong Liu, Zuquan Song, Jun Wang, Yun Zhang, Guangming Sheng, Shuguang Wang, Houmin Wei, Chenyuan Wang, Weiqiang Lou, Xi Yang, Mofan Zhang, Kaihua Jiang, Cheng Ren, Xiaoyun Zhi, Menghan Yu, Zhe Nan, Zhuolin Zheng, Baoquan Zhong, Qinlong Wang, Huan Yu, Jinxin Chi, Wang Zhang, Yuhan Li, Zixian Du, Sida Zhao, Yongqiang Zhang, Jingzhe Tang, Zherui Liu, Chuan Wu, Yanghua Peng, Haibin Lin, Wencong Xiao, Xin Liu, Liang Xiang(ByteDance) - **カンファレンス名**: SOSP (ACM Symposium on Operating Systems Principles) 2025 - **発表年**: 2025年(2025年10月13-16日、韓国・ソウルで開催予定) - **arXiv ID**: 2509.16293(投稿日: 2025年9月19日) ### 論文概要 本論文は、ByteDanceが開発した大規模言語モデル([[LLM]])訓練向けのGPUインフラストラクチャ管理システムByteRobustを提案している。数万GPUを用いたLLM訓練において、障害([[CUDA]]エラー、NaN値、ジョブハング等)が頻発し訓練の安定性が課題となっているが、ByteRobustは自動化された障害許容フレームワークにより障害の検出と復旧を定常的に行い、訓練の中断を最小化する。 ### 詳細解説 #### 問題設定 **背景と課題**: LLM訓練の規模は数万GPUに達し拡大を続けているが、それに伴い以下の課題が発生している: 1. **障害の頻発**: CUDAエラー、NaN値、ジョブハング等の障害が多発し、訓練の安定性に重大な影響を与える 2. **明示的障害と暗黙的障害の混在**: エラーメッセージで障害源を特定できる明示的障害だけでなく、明確な信号のない暗黙的障害(ハング、進行しない訓練等)が10%以上を占める 3. **多段階構成による複雑性**: LLM事前訓練はウォームアップ、一般訓練、能力獲得、長文脈、アニーリング等の複数段階で構成され、各段階でコードとシステム最適化の変更が必要 4. **人的エラーの不可避性**: 数ヶ月に及ぶ訓練期間中、データ、アルゴリズム、エンジニアリングコードの継続的な更新により、人的エラーが避けられない **入力と出力**: - 入力: 数千〜数万GPUを用いた大規模LLM訓練ジョブ、多様な並列化戦略(DP、TP、PP、CP等) - 出力: 高いETTR(Effective Time To Recover: 効果的復旧時間)を達成し、非生産的な時間を最小化した安定的な訓練プロセス **必要なデータ**: - ハートビートメッセージによるリアルタイム監視データ - 訓練メトリクス(損失値、勾配統計等) - スタックトレース情報 - システムログとハードウェア診断情報 - チェックポイントデータ #### 提案手法 **ByteRobustのシステム設計**: ByteRobustは制御プレーン(Control Plane)とデータプレーン(Data Plane)の2つのコアコンポーネントから構成される。 ##### 制御プレーン 訓練ジョブの外部で動作し、以下の機能を提供: - 異常検出のオーケストレーション - 障害の局所化 - 適切な復旧アクションのトリガー ##### データプレーン 各訓練Pod内に統合され、以下のモジュールを含む: - **監視モジュール**: リアルタイムでの観測可能性を提供 - **診断モジュール**: 中断時の即座の診断 - **チェックポイント管理**: 高速なチェックポイントロールバック - **スタックトレースキャプチャ**: オンデマンドでの集約分析 **主要な技術手法**: 1. **軽量リアルタイム検出と階層的停止時診断の組み合わせ** - ハートビートメッセージによる異常の早期検出 - 問題発生時の詳細な診断テストによる根本原因の特定 - 最小限のオーバーヘッドで障害マシンを迅速に特定 2. **データ駆動型クラスタリング手法** - ランタイムスタックトレースのクラスタリング - 並列グループ等の定義された障害ドメインでの疑わしいマシンの隔離 - 正確な根本原因の追求よりも、過剰排除により訓練継続を優先 3. **人的エラーへの対応** - 自動障害許容フレームワークがマシン障害検出とコードロールバックを統合 - 迅速な検証と復旧を実現 4. **効率的なフェイルオーバーメカニズム** - **集約ホット更新**: 障害マシンの迅速な交換 - **ウォームバックアップマシン**: 予備マシンの事前準備 - **障害認識チェックポイント**: チェックポイント保存の最適化 **数式と具体例**: ByteRobustの目標は、ETTRを最大化すること: $\text{ETTR} = \frac{\text{実際の訓練時間}}{\text{総経過時間}}$ 実際の訓練時間は、総経過時間から障害検出時間、診断時間、復旧時間を引いたものとなる。ByteRobustは以下により非生産的時間を最小化: - 障害検出時間の短縮(リアルタイム監視により平均数分以内) - 復旧時間の短縮(効率的なチェックポイント管理とホット更新) #### 新規性 **先行研究との比較**: 1. **既存のGPU管理・障害許容システムとの差異** - 従来システム(Kubernetes pod レベルでの管理)に対し、ByteRobustはLLM訓練ジョブマニフェストを拡張し、きめ細かいプロセス管理を実現 - ランタイム情報を活用した障害検出と高速復旧が可能 1. **[[2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs|MegaScale]]との比較** - MegaScaleも同様にByteDanceが開発したシステムだが、ByteRobustはより包括的な障害許容機能を提供 - 特に暗黙的障害(ハング等)への対応を強化 3. **TRANSOMとの比較** - TRANSOMは障害許容LLM訓練システムだが、ByteRobustはLLM訓練プロセスの並列性と特性をより深く活用 - データ駆動型の診断手法により、より効果的な障害局所化を実現 **本研究の独自性**: - LLM訓練プロセスの独自性(多段階構成、連続的コード変更、人的エラー)を明示的に設計に組み込んだ初のシステム - 制御プレーンとデータプレーンの分離による、観測可能性と復旧効率の両立 - 暗黙的障害(特にハング)に対する効果的な検出・診断メカニズム #### 実験設定 **使用データセット**: - 3ヶ月間の密行列モデル([[Llama3]]、70B+パラメータ)の事前訓練ジョブ - 1ヶ月間の[[MoE]]モデル(200B+パラメータ)の事前訓練ジョブ - 9,600台のHopper GPUから構成されるGPUクラスタ **評価用テストベッド**: - **展開結果評価**: 最大1,200マシン、各8台のNVIDIA Hopper 80GB GPU - **ベースライン比較**: 1,024マシン、各16台のNVIDIA L20 48GB GPU(合計16,384 GPU以上) - すべてのマシンは8本の400 Gbps RDMAリンクで相互接続 - 96コアIntel Xeonプロセッサと2TB DRAMを搭載 **評価指標**: 1. **障害検出時間**: 異なるインフラストラクチャ障害の検出に要する時間 2. **ETTR(Effective Time To Recover)**: 実際の訓練時間 / 総経過時間 3. **[[MFU]](Model FLOPs Utilization)**: モデルFLOPs利用率 4. **自動復旧率**: 自動的に検出・復旧された障害の割合 #### 実験結果 **主要な成果**: 1. **障害検出時間の大幅短縮** - 表3に示されるように、ByteRobustは様々なインフラストラクチャ障害の検出時間を効果的に削減 - リアルタイム監視により、多くの障害を数分以内に検出 2. **高い自動復旧率** - 90%以上のソフトウェア・ハードウェア障害を自動的に特定・修復 - 残りの問題もトラブルシューティングツールの支援により対処可能 3. **ETTRとMFUの改善** - 本番環境での展開において、高いETTRを達成 - 訓練の中断を最小化し、継続的な訓練を実現 4. **本番環境での実績** - 数週間にわたる本番訓練ジョブにおいて、100回以上の訓練再起動を経験 - ByteRobustの自動障害許容フレームワークにより、大多数の障害を自動的に処理 - 損失は継続的に収束し、訓練の安定性を実証 5. **ベースライン比較** - セクション8.2において、ByteRobustを複数のベースラインと比較 - 障害復旧における顕著な改善を実証 **具体的な数値**: - 密行列モデル(70B+)とMoEモデル(200B+)の事前訓練において、3ヶ月間および1ヶ月間の統計を収集 - インフラストラクチャ障害が全障害の82%のGPU時間を占めるが、発生件数は11%のみ - ハング(Hang)が全インシデントの10%以上を占める **制限と課題**: 論文では明示されていないが、以下の点が今後の課題として考えられる: - 障害パターンが変化した場合のシステムの適応性 - より多様なハードウェア構成への対応 - コストとパフォーマンスのトレードオフの最適化 ## Abstract 大規模言語モデル(LLM)の訓練規模は数万GPUに達し、さらに拡大を続けており、より大きなモデルのより高速な学習を可能にしています。リソース規模の拡大に伴い、障害(CUDAエラー、NaN値、ジョブハング等)の頻発が訓練の安定性に重大な課題をもたらしています。あらゆる大規模LLM訓練インフラストラクチャは、訓練の中断を最小限に抑え、効率的な障害診断と効果的な障害許容を実現し、高効率な継続的訓練を可能にすることを目指すべきです。本論文では、LLMの堅牢で安定した訓練に特化した大規模GPUインフラストラクチャ管理システムByteRobustを提案します。ByteRobustはLLM訓練プロセスの独自性を活用し、障害の検出と復旧を定常的に行うことを最優先としています。LLM訓練の並列性と特性を活用することで、ByteRobustは高容量の障害許容、迅速な障害の境界設定、および効果的なデータ駆動アプローチによる局所化を実現し、LLM訓練タスクの継続的かつ効率的な訓練を包括的に保証します。