kvcache-ai/Mooncake

Mooncake is the serving platform for Kimi, a leading LLM service provided by Moonshot AI.

何を解決するか

Mooncakeは、大規模なLLMサービングにおける効率のボトルネック、特にKVCache管理の高コストと異種ハードウェア間のデータ移動における性能ギャップを解決します。GPUクラスタにおけるCPU、DRAM、SSDリソースの未利用を解消するために、非統合型のKVキャッシュプールを構築し、プレフィルとデコードクラスタを分離することでスループットを向上させ、レイテンシを低減します。

動作方法

Mooncakeは、KVCache中心の非統合アーキテクチャを採用しています。主に以下の3つのコンポーネントから構成されます:

  1. Transfer Engine (TE):TCP、RDMA、AWS EFAなど多様なネットワークとアクセラレータ(CUDA、ROCm、Ascendなど)を横断したバッチデータ移動を統一インターフェースで提供する高性能フレームワーク。トポロジ感知ルーティングとマルチNIC帯域幅集約を活用します。
  2. Mooncake Store:クラスタ間で再利用可能なKVキャッシュとモデル重みを管理する分散型キー値ストレージエンジン。DRAMとSSD/NVMeを用いたマルチティアキャッシュ階層を採用し、ゼロコピーによるデータ転送をサポートして帯域幅を最大化します。
  3. Mooncake EP & PG:MoE(Mixture-of-Experts)推論用のフェイルセーフ分散実行層。エキスパート並列ディスパッチと、PyTorch互換のプロセスグループバックエンドを提供し、失敗したランクの再起動なしにプロセスを弾性的に回復可能にします。

対象ユーザー

大規模なLLM推論およびトレーニングインフラを構築・運用する開発者やオペレーター向けです。特に、複数ノードGPUクラスタ上で巨大モデル(MoEモデルなど)を展開し、ハードウェア利用効率を最大化し、厳格なサービスレベル目標(SLO)を維持したいユーザーに最適です。

主な特徴

  • 高帯域データ転送:8x400 Gbps RoCEネットワークで最大190 GB/sを達成。標準TCPよりも大幅に高速です。
  • 非統合型ストレージ:KVCacheストレージを推論エンジンから分離し、ストレージノードをエンジンの再起動やアップグレードとは独立してスケーリング可能にします。
  • フェイルセーフなMoEサービング:失敗したランクを迂回し、プロセスを弾性的に回復できるMoE推論を可能にします。
  • 広範なエコシステム統合:vLLM、SGLang、TensorRT-LLM、PyTorchエコシステムと深く統合されています。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • プロジェクト