← 返回首页 — vLLM Blog — 进阶
工具链 · 深度解读 · IMPACT 7/10

vLLM联手Novita AI:PegaFlow如何让大模型推理的“记忆”独立存活

原文: vLLM x Novita AI: PegaFlow for Production-Grade External KV Cache

vLLM与Novita AI合作推出PegaFlow,将KV缓存从推理进程中剥离为独立服务,显著提升启动速度、吞吐量和资源利用率,为生产级大模型部署提供新思路。

核心要点
  • KV缓存作为独立服务存在,与推理进程生命周期解耦
  • 采用Rust实现数据平面,避免Python和GIL开销,提升延迟稳定性
  • 通过三级缓存(主机内存、RDMA远端内存、SSD)和跨实例共享提升资源利用率
  • 通过标准接口集成,无需修改vLLM源码或维护长期分支
深度解读

起因:为什么需要把KV缓存“请”出推理进程?

在大模型推理服务中,KV缓存是最昂贵的运行时资产之一。它可能占用单台主机数百GiB的内存,需要时间分配和预热,并且其生命周期往往比创建它的请求模式更长。传统上,这个资产与推理引擎进程紧密耦合。这种耦合在引擎崩溃、滚动升级或模型切换时变得非常痛苦。当引擎重启时,整个KV缓存池随之消失。当服务集群从一个模型部署切换到另一个时,数百GiB的锁定内存可能需要重新分配和预热,实例才能重新提供服务。这本质上是一种资源浪费和运维负担。PegaFlow的出现,正是为了解决这个生产环境中的核心痛点:让KV缓存成为一种长期存在的、可共享的服务资产,而不是绑定在单个推理进程上的临时状态。

拆解:PegaFlow的核心设计与技术亮点

PegaFlow的核心思想很简单:将KV缓存的运行时移至每台机器上的一个独立守护进程。这个PegaFlow服务器拥有主机KV池、SSD缓存、拓扑元数据、RDMA资源、索引状态和后台任务。vLLM工作进程通过CUDA IPC(数据路径)和gRPC(本地控制路径)与本地的PegaFlow进程通信。

其技术亮点主要体现在几个方面:

  1. 进程边界与故障域隔离:vLLM进程可以崩溃、升级或切换模型,而缓存服务保持活跃。反之,缓存层的问题也不必拖垮推理引擎进程。这使得故障域更加清晰,运维更可控。
  2. Rust实现的数据平面:选择Rust来实现数据平面是一个关键的工程决策。它避免了Python解释器的开销、GIL(全局解释器锁)争用以及“Stop-the-World”式的垃圾回收。这对于一个生产级缓存服务至关重要,因为它除了在关键路径上移动数据外,还需要运行大量后台任务(如统计收集、索引上传、预取、健康检查、驱逐和SSD缓存管理)。这些任务在独立的Rust服务中运行,与vLLM共享解释器运行时,从而为系统提供了更强的延迟稳定性和资源隔离性。
  3. 三级缓存与资源共享:PegaFlow将固定主机内存、可通过RDMA访问的远端内存和SSD组合成一个三级缓存层次结构。更重要的是,它允许在同一主机上的多个引擎和多个模型之间共享这个缓存池。不同的模型、张量并行配置和引擎版本可以在一个PegaFlow进程下通过命名空间隔离共存,同时共享相同的内存池、SSD容量和跨节点网络带宽。评估显示,8个Qwen3-8B实例共享一个主机缓存池,相比各自拥有独立缓存,吞吐量提高了56%。对于使用TP8的DeepSeek-V3.2 MLA,通过只存储一次逻辑KV(而不是每个TP rank存储一次),吞吐量提升了72%。

趋势洞察:从“嵌入式组件”到“平台化服务”

PegaFlow揭示了LLM推理基础设施的一个深层趋势:关键组件正在从嵌入式库向平台化、服务化的方向演进。KV缓存管理不再仅仅是推理引擎(如vLLM)内部的一个模块,而是被抽象成一个独立的、可独立升级、独立扩展、独立运维的“缓存服务”。这与操作系统中将文件系统、网络协议栈等核心功能内核化、服务化的思路一脉相承。这种演进带来了几个好处:

  • 生命周期的解耦:推理引擎可以更轻量、更快速地重启和更新(测试中启动速度提升2.15倍),而无需等待巨大的缓存池重新分配和预热。
  • 资源的池化与超配:缓存资源可以在多个推理实例甚至不同模型之间动态共享,提高了整体资源利用率,降低了成本。
  • 技术栈的专业化:使用Rust等系统级语言来实现对性能、稳定性和资源管理要求极高的缓存服务,而推理引擎可以继续使用Python等高级语言专注于调度和业务逻辑,各司其职。

实用价值与读者启示

对于AI工程师和架构师而言,PegaFlow提供了一个清晰的生产级解决方案范式。

  1. 评估架构选型:如果你正在构建或运维大规模的LLM推理服务,特别是需要频繁更新模型、进行滚动升级或运行多模型混合部署的场景,应该认真考虑将KV缓存管理外部化、服务化。PegaFlow通过标准的kv_transfer_config路径集成,无需修改vLLM源码,降低了采纳门槛。
  2. 关注“非关键路径”的稳定性:PegaFlow用Rust处理后台任务以保障数据路径延迟稳定,这提醒我们,在构建高性能系统时,不仅要优化关键路径,还要确保后台任务(监控、清理、预取等)不会干扰主业务流的性能。
  3. 思考资源的“共享”与“隔离”:在同一个物理主机上运行多个模型或多个引擎实例时,如何高效、安全地共享昂贵的GPU内存资源?PegaFlow的命名空间隔离和共享池设计提供了一个有价值的参考。

反常识/意外角度

一个可能被忽略的点是,这项工作的主要驱动力并非单纯的性能优化,而是运维和生命周期管理。文章明确指出,移动KV缓存到外部进程“主要是受生命周期管理、共享和CPU资源隔离的驱动”。性能提升(如吞吐量增加)是这种架构解耦带来的自然结果。这提醒我们,在基础设施设计中,解决运维痛点(如快速重启、故障隔离)往往能带来比单纯追求算法极限更广泛、更实际的收益。此外,用Rust重写数据平面带来的延迟稳定性收益,可能比峰值吞吐量的数字对生产环境更有价值。


原文地址: vLLM x Novita AI: PegaFlow for Production-Grade External KV Cache

分析由 BitByAI 生成 · 阅读原文

原文来自 vLLM Blog · 由 BitByAI 自动解读