kvcache-ai/Mooncake

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

解決的問題

Mooncake 解決了大規模 LLM 服務中的低效問題,特別是 KV 快取引起的瓶頸。它解決了 GPU 集群中硬體資源(CPU、DRAM 與 SSD)利用率不足的問題,以及在推理與訓練過程中跨網路移動大量數據(如 KV 快取與模型權重)時產生的高延遲問題。

工作原理

Mooncake 實現了一種以 KV 快取為中心的解耦架構,將 prefill(預填充)與 decode(解碼)集群分離。它使用三個主要組件來管理數據與執行:

  • Transfer Engine (TE): 一個高性能數據傳輸框架,透過拓撲感知路由與頻寬聚合,為在不同儲存類型(DRAM、VRAM、NVMe)與網路協定(RDMA、TCP、AWS EFA 等)之間移動張量提供統一介面。
  • Mooncake Store: 一個分散式鍵值快取儲存引擎,利用多級分層結構(DRAM 與 SSD/NVMe)與零複製數據傳輸,在集群中管理可重用的 KV 快取與模型權重。
  • Mooncake EP & PG: 用於容錯分散式執行的工具,專門針對 Mixture-of-Experts (MoE) 模型設計,允許系統繞過失敗的 rank 並進行進程恢復,而無需重啟整個服務。

適用對象

專為大規模 LLM 推理與訓練基礎設施的開發人員與營運人員設計,特別是那些在使用 vLLM、SGLang 或 TensorRT-LLM 等框架,並需要在多節點 GPU 集群中最大化吞吐量並降低延遲的用戶。

亮點

  • 高頻寬傳輸: 在 8x400 Gbps RoCE 網路中可提供高達 190 GB/s 的傳輸速度,顯著快於標準 TCP。
  • 解耦儲存: 將 KV 快取儲存與推理引擎解耦,允許在不重啟引擎的情況下對儲存節點進行彈性擴展。
  • 多級快取: 支援 DRAM 與 SSD/NVMe 的層級結構,以增加總快取容量。
  • 容錯 MoE: 實現專家並行推理,能夠檢測並繞過失敗的 rank,以保持服務可用性。
  • 廣泛的生態系統整合: 與 vLLM、SGLang 及 TensorRT-LLM 深度整合,實現高效的 KV 快取與權重傳輸。