MegaTrain:単一GPUで100B+パラメータ級の大規模言語モデルをフル精度で学習する

arXiv cs.CL / 2026/4/8

💬 オピニオンDeveloper Stack & InfrastructureIdeas & Deep AnalysisModels & Research

要点

  • MegaTrainは、パラメータとオプティマイザ状態をホスト(CPU)メモリに保持することで、単一GPUで100B+パラメータのLLMをフル精度で学習することに特化したメモリ中心の学習システムです。
  • GPU上に常駐する永続状態に依存するのではなく、MegaTrainはパラメータを層ごとにGPUへストリーミングし、勾配を計算した後、再びオフロードします。これにより、デバイス上に保持しなければならないものを最小化します。
  • システムは、複数のCUDAストリームを用いたダブルバッファリングのパイプライン実行エンジンにより、パラメータのプリフェッチ、計算、勾配のオフロードを重ね合わせることで、CPU–GPU帯域の限界に対処します。
  • ステートフルなautogradグラフのオーバーヘッドを回避するため、ストリーミングで流し込まれる際に重みを動的にバインドするステートレスな層テンプレートを使用し、柔軟性を高めるとともにグラフのメタデータを削減します。
  • 報告されている結果では、1.5TBのホストメモリを備えた単一のH200上で120Bの学習が確実に行えたほか、14BでDeepSpeed ZeRO-3(CPUオフロード)に対して最大1.84×のスループット、またGH200上で512kトークンのコンテキストを用いた7Bの学習が示されています。

Abstract

本稿では、MegaTrainというメモリ中心のシステムを提案する。単一GPU上で、フル精度により100B+パラメータ級の大規模言語モデルを効率的に学習する。従来のGPU中心のシステムとは異なり、MegaTrainはパラメータとオプティマイザ状態をホストメモリ(CPUメモリ)に保持し、GPUを一時的な計算エンジンとして扱う。各層について、パラメータをストリーミングで読み込み、勾配を計算して外部へ出力することで、デバイス上に保持され続ける状態を最小化する。CPU-GPU帯域幅ボトルネックに対処するため、我々は2つの主要な最適化を採用する。1) 複数のCUDAストリームにまたがって、パラメータのプリフェッチ、計算、勾配オフロードをオーバーラップさせるパイプライン化された二重バッファ付き実行エンジンを導入し、GPUの継続的な実行を可能にする。2) 恒常的(persistent)な自動微分グラフを、ステートレスな層テンプレートに置き換える。ストリーミングで読み込まれる際に重みを動的にバインドすることで、恒常的なグラフのメタデータを排除しつつ、スケジューリングの柔軟性を確保する。ホストメモリ1.5TBを搭載した単一H200 GPUにおいて、MegaTrainは最大120Bパラメータまでのモデルを確実に学習できる。また、14Bモデルを学習する際、CPUオフロードを伴うDeepSpeed ZeRO-3に対して学習スループットを1.84\times向上させる。さらにMegaTrainは、単一のGH200上で512kトークンのコンテキストを持つ7Bモデルの学習も可能にする。