MoonshotAI/checkpoint-engine
Checkpoint-engine is a simple middleware to update model weights in LLM inference engines
What it solves
Checkpoint Engine は、LLM 推論エンジンのモデル重みを効率的に更新するためのミドルウェアです。これは、モデル重みを頻繁かつ高速に大規模 GPU クラスタ全体で更新し、サービスを中断しないことが求められる強化学習ワークフローに特に重要です。
How it works
ParameterServer クラスを推論エンジンと同じノードに配置し、重み更新を以下の 2 つの主要手法で管理します。
- Broadcast: 最速の手法で、複数インスタンス間の同期更新に使用されます。3 段階プロセス(Host から Device への転送、CUDA IPC バッファを介したワーカー間ブロードキャスト、推論エンジンへのリロード)をパイプライン化し、通信とコピーを重ね合わせます。
- P2P: 動的スケーリング向けで、新規インスタンスの追加や再起動時に利用されます。
mooncake-transfer-engineを用いて既存インスタンスの CPU から新インスタンスの GPU へ重みを転送し、バケット割り当てを最適化してネットワーク帯域幅を最大化します。
Who it’s for
大規模 LLM(例:1 兆パラメータ)や vLLM、SGLang といった分散推論フレームワークを扱う開発者・研究者で、高性能なインプレース重み更新が必要な方を対象としています。
Highlights
- Extreme Scale: 約 20 秒で数千台の GPU 上で 1 兆パラメータモデルを更新可能。
- Flexible Update Paths: 同期ブロードキャストと非同期 P2P 転送の両方をサポートし、動的な可用性に対応。
- Hardware Support: NVIDIA GPU(CUDA)および Intel XPU(SYCL IPC メモリ)に対応。
- Framework Integration: vLLM と SGLang に統合され、モデルロードと更新時間を短縮。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト