Mooncake: それが何であるか、解決する問題、そして注目を集めている理由

Mooncake: それが何であるか、解決する問題、そして注目を集めている理由

解決する課題

Mooncake は、プレフィルとデコードのクラスターを分離する(PD ディスアグリゲーション)ことで、従来の LLM サービングの非効率性に対処します。分散型 KVCache プールを作成することで、CPU、DRAM、SSD といったハードウェアリソースの未活用という問題を解決し、特に従来の手法がレイテンシの Service Level Objectives(SLO)を満たすのが難しい長コンテキストシナリオにおいて、スループットの向上とメモリ効率の改善を実現します。

仕組み

Mooncake は、KVCache を中心としたアーキテクチャを実装し、主に以下の 3 つのコンポーネントで構成されています。

  1. Transfer Engine (TE): テンソルをさまざまなストレージやネットワーク環境間で転送するための統一インターフェースを提供する高性能データ転送フレームワークです。RDMA、トポロジー認識ルーティング、マルチ NIC 帯域幅集約を利用し、標準的な TCP よりもはるかに高速なデータ転送を実現します。
  2. Mooncake Store: Transfer Engine 上に構築された分散型キー・バリューキャッシュストレージエンジンです。マルチティア階層(DRAM と SSD/NVMe)を用いてクラスター全体で再利用可能な KV キャッシュとモデル重みを管理し、エンジンの再起動に依存しない弾力的なストレージを提供します。
  3. Mooncake EP と Process Group (PG): 大規模な Mixture-of-Experts(MoE)推論をサポートするためにシステムを拡張し、障害耐性のあるエキスパート並列ディスパッチと、ランク障害からサービス全体を再起動せずに回復できる PyTorch 互換の分散プロセスグループバックエンドを提供します。

対象ユーザー

Mooncake は、Kimi のような大規模 LLM サービスの開発者・運用者や、vLLM、SGLang、TensorRT-LLM などの推論エンジンのメンテナンス担当者を対象としています。高トラフィックかつ長コンテキストの AI アプリケーションにおいて、スループットとリソース利用率の最大化が求められるケースに最適です。

ハイライト

  • 高性能転送: 8×400 Gbps RoCE ネットワークで最大 190 GB/s の帯域幅を実現し、TCP よりも大幅に高速です。
  • PD ディスアグリゲーション: プレフィルとデコードを分離し、リソース使用率とスループットを最適化します。
  • マルチティアストレージ: DRAM と SSD/NVMe を活用した大規模で弾力的な KVCache プールを提供します。
  • 障害耐性 MoE: エキスパート並列推論をサポートし、障害が発生したランクを迂回してサービス可用性を維持します。
  • 広範なエコシステム統合: vLLM、SGLang、TensorRT-LLM、PyTorch エコシステムに統合されています。

Sources