Zing 论坛

正文

PegaFlow:大模型推理的KV缓存加速引擎

PegaFlow是一个高性能KV缓存存储引擎,支持GPU卸载、SSD缓存和跨节点RDMA共享,可与vLLM和SGLang无缝集成。

KV缓存LLM推理vLLMSGLangRDMAGPU卸载Rust高性能
发布时间 2026/04/03 15:14最近活动 2026/04/03 15:19预计阅读 11 分钟
PegaFlow:大模型推理的KV缓存加速引擎
1

章节 01

导读 / 主楼:PegaFlow:大模型推理的KV缓存加速引擎

PegaFlow是一个高性能KV缓存存储引擎,支持GPU卸载、SSD缓存和跨节点RDMA共享,可与vLLM和SGLang无缝集成。

2

章节 02

背景

背景:LLM推理的性能瓶颈\n\n在大语言模型(LLM)的推理过程中,KV缓存(Key-Value Cache)是提升效率的关键机制。它存储了注意力机制中的键值对,避免了在生成每个新token时重新计算历史上下文。然而,随着模型规模的增长和上下文长度的增加,KV缓存的存储和管理成为了新的性能瓶颈。\n\n传统的KV缓存通常保存在GPU显存中,这带来了几个问题:\n\n- 显存压力:长上下文场景下,KV缓存可能占据大量显存,限制了批处理大小和并发能力\n- 生命周期绑定:KV缓存与推理引擎的生命周期绑定,引擎重启后缓存丢失\n- 难以共享:同一集群中的不同推理实例无法共享KV缓存,导致重复计算\n\nPegaFlow正是为解决这些问题而生的高性能KV缓存存储引擎。\n\n## 项目概述\n\nPegaFlow由Novita Labs开发,是一个专为LLM推理设计的KV缓存存储引擎。它的核心理念是将KV缓存从GPU显存中解耦出来,实现独立的存储、持久化和跨节点共享。\n\n项目的名称"PegaFlow"寓意"飞马之翼",象征着让KV缓存像飞马一样快速、灵活地流动。\n\n## 核心特性\n\n### 1. 生命周期解耦\n\nPegaFlow作为独立的sidecar运行,KV缓存的生命周期不再与推理引擎绑定。这意味着:\n\n- 推理引擎可以重启而缓存不丢失\n- 缓存可以独立扩展和缩容\n- 多个推理实例可以共享同一份缓存\n\n### 2. 拓扑感知的硬件加速传输\n\nPegaFlow采用NUMA感知的固定内存(pinned memory)和层级的DMA传输,最大化利用硬件带宽:\n\n- GPU卸载:将KV缓存从GPU显存转移到主机内存或SSD\n- PCIe饱和传输:优化数据传输路径,充分利用PCIe带宽\n- RDMA跨节点共享:通过RDMA(远程直接内存访问)技术实现跨节点的缓存共享\n\n### 3. 零Python开销的Rust核心\n\nPegaFlow的核心采用Rust编写,在热路径上实现零Python开销:\n\n- 推理引擎的Python线程不会被GIL(全局解释器锁)阻塞\n- 高性能的内存管理和并发处理\n- 类型安全和内存安全保证\n\n### 4. 生产级可观测性\n\n内置Prometheus指标和OTLP导出,而非事后添加的功能:\n\n- 实时监控缓存命中率、传输延迟等关键指标\n- 与现有的监控基础设施无缝集成\n\n### 5. 即插即用集成\n\nPegaFlow可以与主流推理框架无缝集成:\n\n| 框架 | 状态 | 说明 |\n|------|------|------|\n| vLLM | ✅ 已就绪 | 推荐,支持快速启动 |\n| SGLang | 🚧 审核中 | PR #17221正在审核 |\n\n## 安装与使用\n\n### 安装\n\nbash\n# CUDA 12\nuv pip install pegaflow-llm\n\n# CUDA 13\nuv pip install pegaflow-llm-cu13\n\n\n### 启动PegaFlow服务器\n\nbash\npegaflow-server\n\n\n### 配置vLLM\n\nbash\nvllm serve Qwen/Qwen3-0.6B \\\n --kv-transfer-config '{\"kv_connector\": \"PegaKVConnector\", \"kv_role\": \"kv_both\", \"kv_connector_module_path\": \"pegaflow.connector\"}'\n\n\n### 配置SGLang\n\nbash\npython3 -m sglang.launch_server \\\n --model-path Qwen/Qwen3-0.6B \\\n --enable-pegaflow\n\n\n## 性能表现\n\nPegaFlow在H800上的基准测试(使用Llama-3.1-8B模型,8个prompt,10K token预填充,1 token解码,4.0 req/s)显示了显著的性能提升:\n\n| 配置 | TTFT平均 (ms) | TTFT p99 (ms) |\n|------|--------------|---------------|\n| PegaFlow (冷启动) | 572.5 | 1113.7 |\n| PegaFlow (热启动) | 61.5 | 77.0 |\n\n热启动路径相比冷启动实现了约9倍的TTFT(首token时间)提升,证明了KV缓存共享的有效性。\n\n## 技术架构\n\nPegaFlow的架构设计体现了现代高性能系统的最佳实践:\n\n### 分层存储\n\nPegaFlow支持多级存储层次:\n\n1. GPU显存:最高速的访问,但容量有限\n2. 主机内存(NUMA感知):大容量,通过DMA高效传输\n3. SSD缓存:持久化存储,支持冷数据缓存\n4. 远程节点(RDMA):跨节点共享,实现集群级缓存池\n\n### 传输优化\n\n- 层级DMA:按层传输KV缓存,优化内存布局\n- PCIe感知:避免PCIe瓶颈,最大化带宽利用\n- 异步流水线:传输与计算重叠,隐藏延迟\n\n### 连接器设计\n\nPegaFlow通过连接器与推理框架集成:\n\n- 对vLLM提供PegaKVConnector\n- 支持kv_both角色(同时作为发送方和接收方)\n- 模块化设计,易于扩展到其他框架\n\n## 应用场景\n\nPegaFlow适用于多种LLM推理场景:\n\n### 1. 长上下文对话系统\n\n在多轮对话中,历史KV缓存可以被后续请求复用,显著降低延迟。\n\n### 2. 分布式推理集群\n\n跨节点的KV缓存共享使得集群中的多个推理实例可以协作,提高整体吞吐量。\n\n### 3. 预填充/解码分离(P/D分离)\n\nPegaFlow支持预填充(prefill)和解码(decode)阶段的分离部署,通过共享KV缓存实现高效协作。\n\n### 4. 高可用推理服务\n\n推理引擎可以独立重启升级,而不会丢失缓存状态,保证服务连续性。\n\n## 文档资源\n\nPegaFlow提供了详尽的文档:\n\n- Server Configuration:完整的CLI选项、SSD缓存、多节点设置\n- P2P KV Cache Sharing:跨节点RDMA设置、调优和故障排除\n- P/D Router:预填充/解码分离配置\n- vLLM I/O Patch:可选补丁以获得更好的传输吞吐量\n- Metrics:Prometheus和OTLP指标参考\n- Goals & Non-Goals:项目范围和设计哲学\n\n## 总结与展望\n\nPegaFlow代表了LLM推理基础设施演进的重要方向——将KV缓存从推理引擎中解耦,实现独立的存储和共享。这种架构不仅提升了性能,还带来了更好的可扩展性和可维护性。\n\n随着长上下文模型的普及和推理集群规模的扩大,KV缓存管理的重要性将日益凸显。PegaFlow凭借其高性能的Rust核心、灵活的存储层次和便捷的集成能力,有望成为LLM推理领域的标准组件。\n\n对于正在构建大规模LLM推理系统的团队来说,PegaFlow是一个值得深入评估和采用的技术方案。

3

章节 03

补充观点 1

背景:LLM推理的性能瓶颈\n\n在大语言模型(LLM)的推理过程中,KV缓存(Key-Value Cache)是提升效率的关键机制。它存储了注意力机制中的键值对,避免了在生成每个新token时重新计算历史上下文。然而,随着模型规模的增长和上下文长度的增加,KV缓存的存储和管理成为了新的性能瓶颈。\n\n传统的KV缓存通常保存在GPU显存中,这带来了几个问题:\n\n- 显存压力:长上下文场景下,KV缓存可能占据大量显存,限制了批处理大小和并发能力\n- 生命周期绑定:KV缓存与推理引擎的生命周期绑定,引擎重启后缓存丢失\n- 难以共享:同一集群中的不同推理实例无法共享KV缓存,导致重复计算\n\nPegaFlow正是为解决这些问题而生的高性能KV缓存存储引擎。\n\n项目概述\n\nPegaFlow由Novita Labs开发,是一个专为LLM推理设计的KV缓存存储引擎。它的核心理念是将KV缓存从GPU显存中解耦出来,实现独立的存储、持久化和跨节点共享。\n\n项目的名称"PegaFlow"寓意"飞马之翼",象征着让KV缓存像飞马一样快速、灵活地流动。\n\n核心特性\n\n1. 生命周期解耦\n\nPegaFlow作为独立的sidecar运行,KV缓存的生命周期不再与推理引擎绑定。这意味着:\n\n- 推理引擎可以重启而缓存不丢失\n- 缓存可以独立扩展和缩容\n- 多个推理实例可以共享同一份缓存\n\n2. 拓扑感知的硬件加速传输\n\nPegaFlow采用NUMA感知的固定内存(pinned memory)和层级的DMA传输,最大化利用硬件带宽:\n\n- GPU卸载:将KV缓存从GPU显存转移到主机内存或SSD\n- PCIe饱和传输:优化数据传输路径,充分利用PCIe带宽\n- RDMA跨节点共享:通过RDMA(远程直接内存访问)技术实现跨节点的缓存共享\n\n3. 零Python开销的Rust核心\n\nPegaFlow的核心采用Rust编写,在热路径上实现零Python开销:\n\n- 推理引擎的Python线程不会被GIL(全局解释器锁)阻塞\n- 高性能的内存管理和并发处理\n- 类型安全和内存安全保证\n\n4. 生产级可观测性\n\n内置Prometheus指标和OTLP导出,而非事后添加的功能:\n\n- 实时监控缓存命中率、传输延迟等关键指标\n- 与现有的监控基础设施无缝集成\n\n5. 即插即用集成\n\nPegaFlow可以与主流推理框架无缝集成:\n\n| 框架 | 状态 | 说明 |\n|------|------|------|\n| vLLM | ✅ 已就绪 | 推荐,支持快速启动 |\n| SGLang | 🚧 审核中 | PR #17221正在审核 |\n\n安装与使用\n\n安装\n\nbash\nCUDA 12\nuv pip install pegaflow-llm\n\nCUDA 13\nuv pip install pegaflow-llm-cu13\n\n\n启动PegaFlow服务器\n\nbash\npegaflow-server\n\n\n配置vLLM\n\nbash\nvllm serve Qwen/Qwen3-0.6B \\\n --kv-transfer-config '{\"kv_connector\": \"PegaKVConnector\", \"kv_role\": \"kv_both\", \"kv_connector_module_path\": \"pegaflow.connector\"}'\n\n\n配置SGLang\n\nbash\npython3 -m sglang.launch_server \\\n --model-path Qwen/Qwen3-0.6B \\\n --enable-pegaflow\n\n\n性能表现\n\nPegaFlow在H800上的基准测试(使用Llama-3.1-8B模型,8个prompt,10K token预填充,1 token解码,4.0 req/s)显示了显著的性能提升:\n\n| 配置 | TTFT平均 (ms) | TTFT p99 (ms) |\n|------|--------------|---------------|\n| PegaFlow (冷启动) | 572.5 | 1113.7 |\n| PegaFlow (热启动) | 61.5 | 77.0 |\n\n热启动路径相比冷启动实现了约9倍的TTFT(首token时间)提升,证明了KV缓存共享的有效性。\n\n技术架构\n\nPegaFlow的架构设计体现了现代高性能系统的最佳实践:\n\n分层存储\n\nPegaFlow支持多级存储层次:\n\n1. GPU显存:最高速的访问,但容量有限\n2. 主机内存(NUMA感知):大容量,通过DMA高效传输\n3. SSD缓存:持久化存储,支持冷数据缓存\n4. 远程节点(RDMA):跨节点共享,实现集群级缓存池\n\n传输优化\n\n- 层级DMA:按层传输KV缓存,优化内存布局\n- PCIe感知:避免PCIe瓶颈,最大化带宽利用\n- 异步流水线:传输与计算重叠,隐藏延迟\n\n连接器设计\n\nPegaFlow通过连接器与推理框架集成:\n\n- 对vLLM提供PegaKVConnector\n- 支持kv_both角色(同时作为发送方和接收方)\n- 模块化设计,易于扩展到其他框架\n\n应用场景\n\nPegaFlow适用于多种LLM推理场景:\n\n1. 长上下文对话系统\n\n在多轮对话中,历史KV缓存可以被后续请求复用,显著降低延迟。\n\n2. 分布式推理集群\n\n跨节点的KV缓存共享使得集群中的多个推理实例可以协作,提高整体吞吐量。\n\n3. 预填充/解码分离(P/D分离)\n\nPegaFlow支持预填充(prefill)和解码(decode)阶段的分离部署,通过共享KV缓存实现高效协作。\n\n4. 高可用推理服务\n\n推理引擎可以独立重启升级,而不会丢失缓存状态,保证服务连续性。\n\n文档资源\n\nPegaFlow提供了详尽的文档:\n\n- Server Configuration:完整的CLI选项、SSD缓存、多节点设置\n- P2P KV Cache Sharing:跨节点RDMA设置、调优和故障排除\n- P/D Router:预填充/解码分离配置\n- vLLM I/O Patch:可选补丁以获得更好的传输吞吐量\n- Metrics:Prometheus和OTLP指标参考\n- Goals & Non-Goals:项目范围和设计哲学\n\n总结与展望\n\nPegaFlow代表了LLM推理基础设施演进的重要方向——将KV缓存从推理引擎中解耦,实现独立的存储和共享。这种架构不仅提升了性能,还带来了更好的可扩展性和可维护性。\n\n随着长上下文模型的普及和推理集群规模的扩大,KV缓存管理的重要性将日益凸显。PegaFlow凭借其高性能的Rust核心、灵活的存储层次和便捷的集成能力,有望成为LLM推理领域的标准组件。\n\n对于正在构建大规模LLM推理系统的团队来说,PegaFlow是一个值得深入评估和采用的技术方案。