首页/新闻资讯/正文详情

Unified Cache Manager(UCM)架构深度解析:一张图看懂Connector到Store的完整数据流

发布时间:2026/9/25 2:02:12 来源:云帆数科 栏目:资讯中心
Unified Cache Manager(UCM)架构深度解析:一张图看懂Connector到Store的完整数据流
Unified Cache ManagerUCM架构深度解析一张图看懂Connector到Store的完整数据流【免费下载链接】unified-cache-managementUnified Cache Manager推理记忆数据管理器是一款以KV Cache为中心的推理加速套件其融合了多类型缓存加速算法工具分级管理并持久化推理过程中产生的KV Cache记忆数据扩大推理上下文窗口以实现高吞吐、低时延的推理体验降低每Token推理成本。项目地址: https://gitcode.com/ModelEngine/unified-cache-managementUnified Cache Manager简称 UCM是一款以KV Cache 为中心的大模型推理加速套件。它通过分层管理与持久化推理过程中产生的 KV Cache 记忆数据配合前缀缓存Prefix Cache、稀疏注意力、PD 分离等多种加速算法帮助推理引擎突破显存限制、扩大上下文窗口从而实现高吞吐、低时延的推理体验并显著降低每 Token 的推理成本。本文将从整体架构出发带你一条线看懂从 LLM 引擎到存储后端的完整 KV Cache 数据流。一张总览图UCM 的六大层级UCM 的整体架构自顶向下分为六个清晰的层级下图就是理解整套架构的地图各层级的职责如下建议对照左侧分层图逐层理解层级名称职责①ProxyPD 混合与 PD 分离场景下的调度入口②Integration以插件形式对接 vLLM、SGLang、MindIE 等推理引擎③Prefill / Decode Acc Libs前填充加速前缀缓存、Cache Blend、Prefill Offload 等与解码加速稀疏注意力等④Sandbox前沿研究技术的试验场⑤Store对接各类存储后端高速读写 KV Cache⑥Centralized Storage集中式存储底座NFS、NAS、MoonCake、3FS 等 新手记忆口诀引擎接进来加速库跑起来Store 存下去——数据流始终沿着这条主线下沉。Connector 层引擎与 UCM 的翻译官Connector连接器是 UCM 架构中最贴近推理引擎的一层。以 vLLM 为例UCM 实现了KVConnectorBase_V1接口核心类定义在 ucm_connector.py 中。它对外暴露三个关键钩子构成完整的 KV Cache 生命周期get_num_new_matched_tokens—— 命中查询新请求进来时先去 Store 查前缀块是否已存在决定能复用多少计算save_kv_layer—— 异步保存每层前填充完成后把新产生的 KV 块逐层写入 Storestart_load_kv—— 异步加载命中块的 KV Cache 从存储异步拉回 HBM与计算流水线重叠。围绕这个基类ucm/integration/vllm/ 目录下还衍生出一族面向不同场景的 ConnectorUCMDirectConnector基础直连实现承担标准存取UCMPDConnectorPD 分离场景下 Prefill/Decode 实例间的 KV 传输UCMBlendConnector配合 Cache Blend 的按需重计算UCMHybridLinearAttentionConnector/UCMFAWAConnector混合注意力模型专用。下图展示了 vLLM 生态中 Connector 与 Store 的完整类层级关系绿色为 UCM 自研组件Store 层分级存储的仓库管理员Store 层是 KV Cache 的持久化出口。所有 Store 都继承统一抽象基类UcmKVStoreBaseucmstore.py对外提供create分配空间、lookup命中查询、load/store读写等标准接口具体由 factory.py 中的UcmConnectorFactory按配置懒加载实例化做到换后端不改引擎。如上图所示Store 采用 Python C 双层结构上层 Python 类UcmPcStore、UcmPipelineStore、UcmMooncakeStore等负责与引擎交互下层 C 的UCM::StoreV1统一接管CacheStore、PosixStore、DramStore、FakeStore、Ds3fsStore、CompressStore等后端实现。目前 ucm/store/ 目录内置的存储后端覆盖了几乎所有常见介质本地内存dramDRAM 级缓存、fake测试桩文件系统nfsstore、posix、pcstore分布式/对象存储mooncakestore、ds3fs、yuanrongstore组合型pipeline多级流水、delegator代理转发、compress压缩存储这种设计让 KV Cache 可以像内存→DRAM→NVMe→网络存储一样逐级下沉显存不够时数据依然找得到。数据流实战三大加速场景如何复用 Store理解了 Connector Store 的骨架后再看三大典型场景就顺理成章了。场景一前缀缓存Prefix Cache加速共享前缀当多个请求共享相同前缀如 System Prompt、多轮对话时KV Cache 只需计算一次。UCM 支持两种组织方式去中心化模式每个推理实例独立持有本地 KV Cache配合 KV Cache 感知的亲和性调度让相同前缀的请求路由到同一实例命中缓存集中式模式KV Cache 统一存入 UCM Store任意实例均可读取——简单调度即可获得高命中率这正是 UCM 集中管理价值的体现。实测数据显示接入 UCM DRAM/NFS Connector 后长上下文请求的首 Token 延迟TTFT可大幅降低场景二PD 分离Prefill 与 Decode 各司其职长序列推理中Prefill计算密集与 Decode访存密集的资源特性截然不同。UCM 的UCMPDConnector支持三种 KV 传输模式模式 1Prefill 实例直接经 HBM 将 KV 传给 Decode 实例模式 2经各自 DRAM 中转模式 3Prefill 侧 KV 先写入 UCM StoreDecode 侧按需读取——彻底解耦两端实例调度最灵活。场景三稀疏注意力把 KV 从 HBM 搬出去解码阶段只需关注少量重要 KV 块UCM 的稀疏算法库ucm/sparse/正是利用 Store 做异步卸载与按需取回。以 GSA 为例其组件与 UCM Store 的协作关系如下Kpre 引擎在 Prefill 期间异步计算块级表示并写入 UCM StoreDecode 期间 Topk 引擎命中后KV-Transfer 管理器再把对应的 Full KV 块异步拉回 HBM全程与计算重叠。同类算法还有KVStar用维度填充的块向量做低成本的 Top-K 块检索ucm/sparse/kvstar/Cache Blend分层挑选高偏差 Token 选择性重计算其余直接复用缓存ucm/sparse/blend/ReRoPE复用已缓存 KV 的 RoPE 位置修正让缓存能用于训练长度之外的上下文。 这些算法的公共点HBM 只留热数据温/冷 KV 一律下沉到 UCM Store存储层因此从备份升级为加速部件。底层引擎C KV 传输内核Python 侧的 Connector 之下还有一套高性能 C 传输内核 kv_semantics/。其对外接口KvClientkv_client.h提供QueryAsync/LoadAsync/StoreAsync/BatchLoadAsync等全异步 API并支持显式内存区域注册RegisterRegions以配合零拷贝传输。内部的 trans/ 模块实现了连接管理ConnectionManager、IO 调度IoScheduler与设备无关的传输提供者Ascend、CUDA、Fake 等多后端保证同一套 Store 配置在不同芯片上都能发挥带宽。快速上手如何接入 UCM以 vLLM 为例接入 UCM 只需三步安装 UCM让ucm包与 Connector 进入 Python 环境选择 Connector 与 Store在启动参数中指定--kv-transfer-config由UcmConnectorFactory按配置创建对应 Store如UcmNfsStore、UcmPcStore、UcmMooncakeStore注册见 factory.py配置存储后端挂载路径、集群地址等写入配置文件即可引擎侧无需任何改动。更多细节可参考官方文档docs/source/getting-started/含 vLLM、SGLang、MindIE 的多引擎快速上手指南与故障排查以及 docs/source/user-guide/prefix-cache/ 中各 Store 的独立使用手册。总结一条主线看懂 UCM问题UCM 的答案引擎怎么接入Integration 层 Connector 插件化对接 vLLM / SGLang / MindIEKV 数据流向哪里HBM → DRAM → 本地/网络存储逐级下沉、异步读写如何加速推理前缀缓存复用、PD 分离传输、稀疏注意力卸载后端怎么换Store 抽象接口 工厂模式配置即切换一句话概括Connector 负责接得住Store 负责存得下稀疏与前缀缓存算法负责跑得快——三者组合就是 UCM 以 KV Cache 为中心降低推理成本的完整闭环。【免费下载链接】unified-cache-managementUnified Cache Manager推理记忆数据管理器是一款以KV Cache为中心的推理加速套件其融合了多类型缓存加速算法工具分级管理并持久化推理过程中产生的KV Cache记忆数据扩大推理上下文窗口以实现高吞吐、低时延的推理体验降低每Token推理成本。项目地址: https://gitcode.com/ModelEngine/unified-cache-management创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

Hydra v9.1口令安全测试实战:从原理到参数的弱口令检测指南
Hydra v9.1口令安全测试实战:从原理到参数的弱口令检测指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 2:02:12

S7-PLCSIM Advanced V3.0安装排障:虚拟网卡与WinPcap驱动配置指南
S7-PLCSIM Advanced V3.0安装排障:虚拟网卡与WinPcap驱动配置指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 2:02:12

ESP32-S3四麦阵列实战:从I2S采集到回声消除全流程
ESP32-S3四麦阵列实战:从I2S采集到回声消除全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 2:02:12

Ray Data LogicalPlan 原理:从逻辑计划到物理计划的分布式执行与调优
Ray Data LogicalPlan 原理:从逻辑计划到物理计划的分布式执行与调优

Ray 生态里最容易被忽略、却又最能决定性能上限的,往往是查询计划那一层。很多人用ray.data做大数据预处理,read_parquet、map、filter、groupby这些 API 用得飞起,但一旦作业变慢、内存爆掉、或者遇到“为什么这个算子没有并行跑”的疑问&am… · 2026/9/25 3:05:06

拆解Flex:ai本地虚拟化的3大核心组件:CUDA劫持、GPU设备插件与Volcano调度扩展
拆解Flex:ai本地虚拟化的3大核心组件:CUDA劫持、GPU设备插件与Volcano调度扩展

拆解Flex:ai本地虚拟化的3大核心组件:CUDA劫持、GPU设备插件与Volcano调度扩展 【免费下载链接】flexai Flex:ai是一个面向AI容器场景的开源项目,其核心能力包含两大部分,分别是XPU虚拟化和多级智能调度。其中XPU虚拟化分为本地XPU虚拟化和跨… · 2026/9/25 3:05:06

Sinon 自定义匹配器(Custom Matchers)实战指南:用 sinon.match 工厂定制你的参数匹配逻辑
Sinon 自定义匹配器(Custom Matchers)实战指南:用 sinon.match 工厂定制你的参数匹配逻辑

测试开发工具 【免费下载链接】sinon Test spies, stubs and mocks for JavaScript. 项目地址: https://gitcode.com/gh_mirrors/si/sinon 点击查看 免费下载 导读:当内置匹配器无法精确表达测试预期时,sinon.match 工厂允许你把任意「值 →… · 2026/9/25 3:05:06

HowToGraphQL React 教程实战:用 Relay Modern 与 GraphQL Subscriptions 实现实时投票数更新
HowToGraphQL React 教程实战:用 Relay Modern 与 GraphQL Subscriptions 实现实时投票数更新

【免费下载链接】howtographql The Fullstack Tutorial for GraphQL 项目地址: https://gitcode.com/gh_mirrors/ho/howtographql 点击查看 免费下载 本文基于 HowToGraphQL(The Fullstack Tutorial for GraphQL)仓库中 React Relay 前端教… · 2026/9/25 3:05:00

XGo 的 for 语句完全指南:从 for..in 迭代语法到 XGo_Enum 自定义迭代协议
XGo 的 for 语句完全指南:从 for..in 迭代语法到 XGo_Enum 自定义迭代协议

编程语言编译器开发工具 【免费下载链接】xgo XGo is a programming language that reads like plain English. But its also incredibly powerful — it lets you leverage assets from C/C, Go, Python, and JavaScript/TypeScript, creating a unified software engineering… · 2026/9/25 3:05:00

Learn-Algorithms 排序算法全景解析:稳定性、复杂度与七大经典排序的源码级实战
Learn-Algorithms 排序算法全景解析:稳定性、复杂度与七大经典排序的源码级实战

教程 【免费下载链接】Learn-Algorithms 算法学习笔记 项目地址: https://gitcode.com/gh_mirrors/le/Learn-Algorithms 点击查看 免费下载 本文以 6 Sort/README.md 为骨架,系统梳理排序稳定性的定义、比较排序与线性排序两大阵营的复杂度边界&#xf… · 2026/9/25 3:05:00

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码