# チェックポイント ## 定義 チェックポイント(checkpoint)とは、計算状態を周期的に保存し、障害発生時に直近の保存点から復旧する耐障害手法。大規模 LLM 訓練では障害頻度が高く([[耐障害LLM訓練]])、高頻度チェックポイントが信頼性の要となる一方で、保存コスト(時間・帯域・ストレージ)が問題になる。GPU カーネルの実行系では、再実行しても結果が変わるカーネルの状態を守るためにチェックポイントが必要になる。([[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]]) ## 横断的知見 - **「何を保存しないか」でチェックポイントコストを攻める**: [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]](PICKER)は、[[べき等性]]を持つカーネルインスタンスはチェックポイント不要という発想で、耐障害システム Asymmetric Resilience のチェックポイントコストを 4% 未満に削減する。チェックポイント最適化が「速く保存する」だけでなく「保存対象を減らす」方向にも開けることを示す。(Source: [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]]) - **チェックポイントコスト削減には 4 つの方向がある(速く保存/予備機で待たない/そもそも保存しない/複製で保存不要化)**: 既存ソースを並べると、(1)**速く保存する**——[[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]] は 2 段階チェックポイント(ホストメモリへの数秒書き込み + 非同期 HDFS 転送)で保存コストを隠す、(2)**予備機で待たない**——[[@2025__SOSP__Robust LLM Training Infrastructure at ByteDance]](ByteRobust)は warm standby と迅速な隔離で復旧の調整時間を縮める、(3)**そもそも保存しない**——PICKER はべき等カーネルのチェックポイントを省く。これらに対し [[@2025__arXiv__FlashRecovery - Fast and Low-Cost Recovery from Failures for Large-Scale Training of LLMs]] は **第 4 の道=データ並列の複製を冗長として周期チェックポイント自体を不要化(k0 = 0)**を加える。データ並列度 N のとき各デバイスに N−1 個のモデル状態の複製があり、障害時は同一データ並列グループの正常デバイスから集合通信で復元する。復旧損失は最大 1 ステップに限定され、定期チェックポイントの I/O オーバーヘッドを原理的に排除する。(Source: [[@2025__arXiv__FlashRecovery - Fast and Low-Cost Recovery from Failures for Large-Scale Training of LLMs]], [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]], [[@2025__SOSP__Robust LLM Training Infrastructure at ByteDance]], [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]]) - **複製冗長とチェックポイントは置換でなく相補**: FlashRecovery は周期チェックポイントを不要化する一方で、同一データ並列グループの N デバイスが同時に全滅するとモデル状態が失われるため、その稀な場合にはチェックポイントへの退避が要ると自ら認める(同時故障確率はデバイス故障率 0.001・N=4 で $0.001^N = 10^{-12}$ と極小だが 0 ではない)。PICKER がべき等カーネルに限ってチェックポイントを省くのと同型で、「保存不要化」はあくまで条件付きであり、最後の砦としてのチェックポイントは残る——複製冗長はチェックポイントの**頻度を下げる**機構であって完全な代替ではない。(Source: [[@2025__arXiv__FlashRecovery - Fast and Low-Cost Recovery from Failures for Large-Scale Training of LLMs]], [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]]) - **チェックポイントの概念的起源は Gray 1985 の状態チェックポイント型[[プロセスペア]]にある**: [[@1985__Tandem__Why Do Computers Stop and What Can Be Done About It]] は 5 種のプロセスペアのうち、状態チェックポイント・自動チェックポイント・デルタチェックポイントの 3 種が「主プロセスの状態をバックアップに転送して障害時に引き継ぐ」設計であると整理した。Gray は最終的に永続プロセスペア(バックアップが健忘状態で起動) + トランザクション UNDO を推奨したが、現代の LLM 訓練チェックポイントは、状態を永続ストレージに保存して障害時にロールバックする点で、Gray の状態チェックポイント型とトランザクション型の組合せに位置づけられる。「性能は良好だがプログラミングが困難」というデルタチェックポイントの評価は、現代の非同期・2 段階チェックポイント設計の動機と通底する。(Source: [[@1985__Tandem__Why Do Computers Stop and What Can Be Done About It]], [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]]) - **チェックポイント頻度は障害率とクラスタ規模から逆算される設計変数である**: [[@2025__HPCA__Revisiting Reliability in Large-Scale Machine Learning Research Clusters]] は ETTR を `R/W` と定義し、長時間・高優先度ジョブでは `E[ETTR] ≈ 1 - Nnodes rf (u0 + Δtcp/2)` と近似する。つまり checkpoint interval `Δtcp` は単なる I/O チューニング値でなく、ジョブ規模 `Nnodes` と障害率 `rf` に応じて ETTR 目標から逆算される。RSC-1 全体を 16,000 GPU の単一ジョブに使う場合、60 分チェックポイントでは ETTR 0.7、5 分では 0.93 と推定され、10 万 GPU 級で ETTR 0.9 を狙うには RSC-2 並みの障害率でも約 2 分チェックポイントと約 2 分再起動が必要になる。(Source: [[@2025__HPCA__Revisiting Reliability in Large-Scale Machine Learning Research Clusters]]) ## 未解決の問い - LLM 訓練の周期チェックポイントと、カーネル単位のべき等性に基づく省略は組み合わせ可能か。 - PICKER の評価は DNN 推論(ResNet/GPT-2 等)中心で、LLM 訓練の高頻度チェックポイント削減への直接適用は未検証。 - 集合通信の信頼性([[@2025__SOSP__Mycroft - Tracing Dependencies in Collective Communication Towards Reliable LLM Training]])やフォールトトレラント AllReduce(NCCLX の FTAR)など、チェックポイント以外の耐障害機構とどう役割分担するか。 - FlashRecovery の複製冗長は各デバイスに N−1 個のモデル状態の複製を要求する。複製を保持するメモリコストと、それで削減できるチェックポイント I/O・再計算コストの損益分岐点はどこか。チェックポイント頻度を下げる代わりに複製冗長へ資源を割く構成は、どのモデルサイズ・データ並列度で有利か。 - 同時全滅確率は $0.001^N$ でデータ並列度 N に強く依存する。テンソル/パイプライン並列を厚く取りデータ並列度 N を小さくする構成(例:N=2)では同時故障耐性が急減し、複製冗長だけでは守りきれずチェックポイントへの依存度が上がる。並列化配分とチェックポイント頻度をどう協調設計するか([[並列化戦略]])。 - ETTR 目標から逆算される分単位チェックポイントは、実際のストレージ帯域・チェックポイントサイズ・非同期書き込みの tail latency と両立するか。頻度だけを上げると保存系が新たな障害源や輻輳源にならないか。 ## 関連 - ソース: [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]] / [[@2025__arXiv__FlashRecovery - Fast and Low-Cost Recovery from Failures for Large-Scale Training of LLMs]] / [[@2025__HPCA__Revisiting Reliability in Large-Scale Machine Learning Research Clusters]] / [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]] / [[@2025__SOSP__Robust LLM Training Infrastructure at ByteDance]] - 概念: [[耐障害LLM訓練]] / [[べき等性]] / [[GPUクラスタ運用]] / [[LLM分散学習]] / [[並列化戦略]] - エンティティ: [[PICKER]] / [[Asymmetric Resilience]] / [[Chimera]] / [[FlashRecovery]] - 関連 MOC: [[AI Infra Telemetry - MOC]] / [[分散深層学習 - MOC]] ## 出典 - [[@2024__arXiv__Microsecond-scale Dynamic Validation of Idempotency for GPU Kernels]](べき等カーネルのチェックポイント省略・コスト 4% 未満) - [[@2025__arXiv__FlashRecovery - Fast and Low-Cost Recovery from Failures for Large-Scale Training of LLMs]](データ並列複製による周期チェックポイント不要化 k0 = 0・損失 1 ステップ限定・同時全滅時のみチェックポイントへ退避) - [[@2025__HPCA__Revisiting Reliability in Large-Scale Machine Learning Research Clusters]](ETTR 近似式とチェックポイント間隔の逆算、16k/100k GPU 級の頻度要件) - [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]](2 段階チェックポイント:ホストメモリへの数秒書き込み + 非同期 HDFS 転送) - [[@2025__SOSP__Robust LLM Training Infrastructure at ByteDance]](warm standby・迅速な隔離による復旧調整の高速化) - [[@1985__Tandem__Why Do Computers Stop and What Can Be Done About It]](プロセスペア5類型の比較・状態/デルタ/自動チェックポイントの概念的起源)