
全文概览
随着大模型(LLM)在各行业加速落地,推理(Inference)阶段的效率瓶颈日益凸显。Transformer架构的自回归机制与长上下文需求,共同将矛头指向了KVCache——这项“以存代算”的关键技术在提升速度的同时,也带来了巨大的显存压力,成为新的性能枷锁。当GPU算力不再是唯一瓶颈,我们如何从根本上优化数据流转与计算冗余?
业界普遍采用稀疏注意力等算法进行优化,但往往停留在计算层本身。华为近期开源的UCM(推理记忆数据管理器)则提供了一个系统级的解题新思路,它不仅在算法层面引入几何稀疏注意力(GSA),更在系统IO和调度策略上进行了深度创新。当KVCache直通向HBM,当重算不再是“一刀切”而是“精准手术”,当自回归的串行瓶颈可以被“历史记忆”检索所打破,AI推理的效能边界是否将被重新定义?本文将深入剖析UCM背后的三大核心技术,探讨其如何构建下一代AI推理的优化范式。
阅读收获
👉 划线高亮 观点批注
8月12日 华为 在2025金融AI推理应用落地与发展论坛上预发布 UCM(推理记忆数据管理器),目前产品原型代码已托管到 Github 。
截图是12月17号截取的,从Commits最近时间来看,仓库还是十分活跃的。

UCM Github仓库
这款聚焦AI推理过程KVCache管理的中间件产品,在预发布演讲中,曾介绍其核心几大“黑科技”,今天我们一起来看看 UCM 是如何看待未来推理场景的 KVCache 管理的。
在聚焦其产品核心技术之前,先来介绍下行业内对推理场景的基本共识。
Transformer 架构因其突破 Scaling Law 限制,而具备近乎无限注意力机制(标准注意力),与之匹配的是:对算力、高速显存的超高需求。在商用场景标准注意力注定无法高效落地,因此在推理成为AI应用基石的今天,稀疏注意力的算法研究成为实践路上的重点研究对象。
稀疏注意力的“得”,在于它通过引入“归纳偏置”,打破了“全体都算”的暴力计算模式。
从本质上讲,像Transformer这样的大语言模型是以自回归 (Autoregressive) 的方式生成文本的,这意味着“基于所有已经生成的token,一次只生成下一个token”。

标准 Transformer 框架
我们可以想象一位非常严谨的砌砖师傅在砌一堵墙。他必须在上一块砖完全砌好之后,才能砌下一块。在第4块砖没有就位之前,他绝对无法开始砌第5块砖。
LLM在推理(生成文本)时的工作方式与此完全相同:
这就造成了一个严重的串行瓶颈。尽管你拥有能够进行大规模并行计算的强大GPU(就像一整个准备就绪的施工队),但它却被迫等待,生成一个token,然后再次等待下一个循环。这个过程天然是序列化的,效率极低,尤其是在生成长文本时。
Transformer 架构解决的是神经网络计算范式问题,计算阶段产生的数据被设计成KV键值对存放在HBM中,如何高效利用神经网络的计算数据,自然想到缓存技术。
KVCache 是一种推理时 (Inference-time) 的优化技术,它不改变模型本身的结构或注意力计算的根本逻辑,其核心目标是加速自回归生成 (Autoregressive Generation) 的过程。
在了解以上技术背景之后,我们再来看看 UCM 产品中是如何思考、创新,以实现更高推理效能的。
1. IO/内存优化(奠基阶段)
首先是IO/内存优化,这类技术以FlashAttention和xFormers的融合Attention内核为代表。它们的特点是Attention计算本身仍是密集(Dense) 的,因此并不会减少浮点运算量(FLOPs)。其核心价值在于减少了高带宽内存(HBM)与片上高速缓存(SRAM)之间的数据访问开销,并降低了中间激活的存储需求。这类优化为后续更复杂的稀疏Attention内核提供了高效的执行模板和底层基础。
2. KV Cache结构稀疏(工程化早期成功)
其次是针对KV Cache结构的稀疏化,这也是推理稀疏化最早实现工程化成功的类别。代表技术包括vLLM的PagedAttention、滑动窗口KV(Sliding Window KV)以及KV Cache的压缩/量化。这类方法主要关注Key/Value的存储,尤其是在时间维度(历史Token)上的优化。它们通过减少缓存命中开销和避免无效Token的常驻,来优化内存使用,但并不触动Q和K的内积计算逻辑。
3. Attention的算后稀疏(Top-K/阈值裁剪)
第三类是Attention的 “算后稀疏” ,例如Top-K Attention(推理裁剪版)和Attention Score阈值处理。这类方法的特点是必须先计算完整的Q Kᵀ,然后根据得分高低保留高分项。这意味着在进行稀疏化裁剪之前,模型已经付出了完整的FLOPs成本和Softmax计算成本,因此它在计算效率上的提升有限。
4. Query驱动的算前稀疏(FLOPs级别减法)
最后,也是最先进的一类,是Query驱动的算前稀疏。代表技术包括QUEST、低秩Query探测和基于能量的预选择。这类优化的核心在于直接针对Q K内积计算本身进行优化。在这种模式下,Attention的稀疏化不再仅仅是 “结构” 上的裁剪,而是一种 “执行决策” 。这是推理稀疏化中第一次在FLOPs级别真正实现减法,同时还能在语义上保持与密集Attention相近的效果。
演进阶段 | 稀疏化维度 | 技术模式 / 算法 | 代表方法 / 系统 | 与 Dense Transformer 的关系 |
|---|---|---|---|---|
Dense 执行 | 无稀疏 | 标准 Attention | 原生 Transformer | 全算全存 |
内存友好 | IO 优化 | Recompute / Tiling | FlashAttention | 不减 FLOPs,只减 IO |
KV 结构稀疏 | Cache 维度 | Paged / Window / Compress | PagedAttention, Sliding KV | 减少 KV 访存 |
Token 级稀疏 | Token 选择 | Early Exit / Skip | LayerSkip, Token Pruning | 跳过部分 token / layer |
Attention 执行稀疏 | QK 维度 | Top-K / Threshold | Sparse QK Kernel | 算后裁剪 |
Query 驱动稀疏 | 算前筛选 | QUEST | QUEST | Dense Attention 的稀疏执行 |
Speculative 稀疏 | 时间轴 | Draft / Verify | Speculative Decoding | 跳过未来 token |
混合执行 | 多维组合 | Hybrid Runtime | vLLM + QUEST + Spec | 多种稀疏叠加 |

UCM 稀疏算法
1. 继承基础: GSA属于广义的“结构稀疏化”范畴。本质上,它承袭了Transformer稀疏注意力算法的两个核心思路:
2. 关键创新点: 与早期稀疏方法相比,GSA提出了几何块Block表征+KV Cache压缩协同稀疏化的新机制,针对实际大模型推理场景,尤其关注“外存<->显存”的数据流动瓶颈与显存命中率精度损失问题,以系统级稀疏和推理效率为目标。
3. 对比传统方法:
GSA设计要素 | 创新机制 | 优势释义 |
|---|---|---|
最大范数+SVD联合Block表征 | 在Block内选取范数最大的k个tokens,再用SVD"概括"表征信息 | 兼顾稀疏压缩和表征质量,提升精度,避免暴力筛选丢失重要内容 |
卸载与预取算法 | 将KVCache保存在持久化的低成本闪存中,基于访问热度智能预取 | 介质-算法-缓存-带宽一体协同,极大提升端到端性能 |
自适应Attention稀疏策略 | 针对不同推理场景自适应切换稀疏/稠密与缓存复用策略 | 根据延迟和带宽灵活调优,实现0加速“空泡”,推理系统更稳健 |
重用,从字面上来理解,就是要提高已经计算生成的 KVCache 利用效率,尽可能减少冗余计算过程,这在长上下文场景中已经被证明是提高推理效率的关键途径。

KVCache 分块重用原型
虽然业内现在已经支持KV Cache片段重用,但仍存在一些问题。其一是重算的精度的泛化性,其二是重算的性能仍有提升的空间。UCM在此基础上进行了改良:
UCM 通过 Transformer 前置层评估,后续层渐进的算法设计动态评估 token 级 KV 漂移程度,并据此决定重算比例:越靠近输入层,重算比例越高,以消除位置编码偏差;越靠近输出层,重算比例递减,仅对差异超过设定阈值的 token 进行补算。
它的核心思想是:在重用KV Cache时,不再采用“要么全部重用、要么全部重算”的粗暴方式,而是像一位经验丰富的外科医生一样,对因位置变化而产生的“计算偏差”进行精确、有重点、分层次的修复,从而在性能和精度之间取得最佳平衡。
为了更好地理解它,我们可以将其名称拆解为三个关键部分来深入探讨:
重用KV Cache时,拼接新输入会导致位置编码偏差 (Positional Encoding Bias)。Transformer的位置编码(如RoPE)对位置敏感,缓存片段的位置身份改变会引入错误信息,导致计算“漂移”并影响精度。因此,需要高效地“重算”来修正偏差。
“渐进式”策略根据Transformer层级采用不同重算力度,遵循递减规律:
此策略本质上是计算资源的最优化分配,将算力集中于对结果影响最大的浅层网络。
“自适应”在“渐进式”策略下实现token级别的精细控制:
此机制确保算力只用于修复真正影响精度的token,避免计算浪费。
传统方案先将 KV 块从外存读入 CPU 内存,再经由 PCIe 拷贝至 GPU HBM,链路长、延迟高。UCM 支持 KV Cache 零拷贝直通 HBM,并在算子内部引入“算当前层、预取下一层”的流水线:当第 i 层注意力计算完成时,第 i+1 层的 KV 块已提前驻留 HBM。该机制将加载延迟隐藏于计算时间内,显著提升加载效率。
如果说“自适应渐进式重算”是从算法层面优化“算什么、怎么算”的问题,那么这项技术就是从系统和IO层面优化“数据如何高效喂给计算单元”的问题。它的核心思想是:通过彻底改造数据从外存到GPU的传输路径和时机,最大限度地消除数据加载延迟对计算效率的影响,让GPU这台昂贵的“计算引擎”永不熄火。

Nvidia GPU数据直通模型
在解释UCM的优势之前,我们先看看传统方案的效率瓶颈在哪里。当一个KV Cache块需要从外存(例如NVMe SSD)加载到GPU HBM以供计算时,它通常需要走过一条漫长且曲折的路径:
这个过程存在两大问题:
UCM通过两项关键创新,彻底解决了上述问题:
这项技术从空间路径上进行了优化。它允许KV Cache数据块从外存(SSD)直接传输到GPU HBM,完全绕过了CPU主机内存这个中转站。
外存 -> CPU内存 -> PCIe -> GPU HBM外存 -> PCIe -> GPU HBM这就像是从仓库(外存)修了一条直达生产线(GPU HBM)的传送带,不再需要先把货物搬进办公室(CPU内存)再转运。其优势显而易见:
这项技术则从时间维度上进行了优化,其核心是将数据加载的耗时隐藏在计算的耗时之中。
它在算子内部实现了一个精巧的流水线(Pipeline):
i 层的注意力时:它消耗的是已经提前加载到HBM中的第 i 层的KV块。i+1 层) 所需要的KV块,并启动从外存到HBM的直接加载。最终的效果是:当第 i 层的计算任务一结束,第 i+1 层的数据也正好准备就绪,计算单元可以无缝衔接,立即开始新的计算任务。
这好比一位高效的厨师(计算单元)在炒菜,旁边始终有一位助手(加载机制)在同步备好下一道菜的原料。厨师永远不需要停下来等待原料,从而实现了最大化的烹饪效率。

UCM 后缀预测加速算法
前面提及过 Transformer 架构自回归机制的串行机制,现代加速器动辄上万个核心,依赖串行生成结果肯定不是最优解,因此提出预测加速算法。
为了打破自回归机制瓶颈,业界发展出了投机推理 (Speculative Decoding) 技术。其核心思想简单而巧妙:与其让大师傅一块一块地砌砖,不如先用一个更快、但没那么精准的方法快速地铺设一个接下来几块砖的“草稿”,然后让大师傅一次性检查所有这些砖是否合格。
那么,关键问题就变成了:生成“猜测”的最佳方式是什么?
这正是后缀检索预测加速算法发挥作用的地方。它为执行“猜测”这一步提供了一种高效得多的方法。
一种常见方法是使用一个更小的、更快的LLM来生成草稿。但这有其缺点(成本高、维护难、需逐模型适配)。后缀检索提出了一种不同且更优雅的思路:与其通过计算来猜测,不如从记忆中检索它。
下面是它的工作原理,并与自回归过程联系起来:
,这是一个...”,系统就会检索出这个后缀。,这是一个...”——就成为了极大概率正确的“草稿”或“猜测”,并被提交给主LLM进行验证。,这是一个...”),并一次性完成验证。如果正确,多个token就被瞬间接受,从而打破了自回归“逐字生成”的链条。
特性 | 传统自回归推理 | 后缀检索投机推理 |
|---|---|---|
过程 | 逐个token,串行生成。 | 猜测一个token块,然后并行验证。 |
瓶颈 | 串行依赖:必须等待前一个token生成完毕。 | 打破了对文本块的串行依赖链。 |
“猜测”方法 | 无 | 从历史序列的记忆库(后缀树)中检索一个可能的续写。 |
效率 | 低。GPU常因等待下一步而空闲。 | 高。用廉价的查找操作替代了昂贵的计算(运行小模型)。 |
核心原则 | “让我计算出下一个词是什么。” | “我以前见过这个短语吗?如果见过,后面跟着的是什么?” |
本质上,后缀检索利用了语言通常具有重复性和可预测性这一特点。通过创建一个系统记忆库,它可以使用快速、廉价的查找来“猜测”常见的短语和序列,从而让强大的LLM能够将宝贵的计算资源用于处理语言中真正新颖和复杂的部分。这也就是为什么说:“存得越多推得越快。”
UCM的方案主要是为了解决现有检索式方案 “粗放、冗余、高并发下失效” 的三大痛点。它通过一系列精巧的设计,将后缀检索技术从一个“能用”的方案,提升到了一个“好用且高效”的水平。
其技术实现和核心优势可以归结为以下三大创新点:
UCM构建了一个信息维度更丰富的“记忆大脑”,而非仅依赖用户输入。
UCM设计了“粗筛精排”的渐进式筛选流程,解决业界“粗放式检索”的无效计算问题。
此亮点解决了高并发下投机推理与正常解码争抢GPU算力导致加速下降的问题。
Summary
UCM 核心技术的拆解就分享到这里了,具体算法实现,可以关注Github代码仓库,为了自己学习方便,我在CNB 克隆了一个版本,且自动生成了Wiki[1],后续有时间,可以就上述算法的代码实现做进一步分析,同时为了方便实验,也打了个vLLM镜像[2]。
UCM 开源真正价值是为更多加速器、高性能存储厂商,提供一个合作平台,如何围绕UCM框架,联合计算、存储生态做大AI推理应用,是产业内值得共同思考的问题。
延伸思考
这次分享的内容就到这里了,或许以下几个问题,能够启发你更多的思考,欢迎留言,说说你的想法~
---【本文完】---
👇阅读原文,搜索🔍更多历史文章。