Joint Encoding of KV-Cache Blocks for Scalable LLM Serving

📄 arXiv: 2601.03067v1 📥 PDF

作者: Joseph Kampeas, Emir Haleva

分类: cs.LG, cs.AI

发布日期: 2026-01-06

备注: 12 pages, 16 figures, 2 tables

🔗 代码/项目: GITHUB


💡 一句话要点

提出KV-Cache联合编码,提升LLM高并发服务吞吐量并降低内存占用

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: KV-Cache压缩 大型语言模型 高并发服务 推理加速 联合编码

📋 核心要点

  1. 现有LLM服务受限于KV缓存的内存占用,传统压缩方法存在启发式、破坏布局或依赖专用硬件等问题。
  2. 提出KV-Cache联合编码,通过融合相似缓存块为共享表示,在标准缓存结构下实现高效压缩。
  3. 实验表明,该方法在多种LLM上实现显著的KV缓存压缩,且精度损失小,吞吐量提升明显。

📝 摘要(中文)

现代大型语言模型(LLM)驱动着交互式AI系统,但受到键值(KV)缓存的内存密集型增长的限制,这限制了并发负载下的实时吞吐量。现有的KV缓存压缩方法依赖于僵化的启发式方法,破坏张量布局,或需要专门的计算,从而阻碍了可扩展性和部署。我们提出了KV缓存块的联合编码,它将跨请求和输入块的相似块融合到共享表示中,同时保留标准缓存结构。这缓解了KV缓存的内存瓶颈,支持高并发服务而无需专用硬件。理论上,我们分析了泊松过程模型下融合缓存块的率失真权衡。在经验上,我们的方法在不同的LLM和基准测试中实现了高达4.38倍的KV缓存压缩,且精度损失可忽略不计,优于最近的结构化和自适应压缩基线。在真实的LLM服务中,联合编码在单机vLLM基准测试中将token吞吐量提高了约40%,证明了推理吞吐量的显着提高。代码可在https://github.com/sef1/kv_fast_fusion kv_joint_encoding获得。

🔬 方法详解

问题定义:现有LLM在部署时,KV-Cache会消耗大量内存,成为性能瓶颈。现有的KV-Cache压缩方法通常依赖于固定的启发式规则,或者会改变张量的存储布局,甚至需要特定的硬件支持,这限制了它们的可扩展性和实际部署效果。因此,如何在不引入过多额外计算开销的前提下,高效压缩KV-Cache,提升LLM的并发服务能力,是一个亟待解决的问题。

核心思路:论文的核心思路是利用不同请求和输入块之间KV-Cache的相似性,将相似的缓存块融合为共享的表示。通过这种方式,可以减少冗余存储,从而降低整体的内存占用。同时,该方法保持了标准的缓存结构,避免了对现有推理流程的较大改动,易于部署和集成。

技术框架:该方法主要包含以下几个阶段:1) KV-Cache块的划分:将KV-Cache划分为固定大小的块。2) 相似性度量:计算不同块之间的相似度,例如通过计算向量的余弦相似度。3) 联合编码:将相似度高于阈值的块进行融合,生成共享的表示。可以使用例如PCA等降维方法来压缩融合后的表示。4) 解码:在推理时,根据索引找到对应的共享表示,并进行解码,恢复原始的KV-Cache块。

关键创新:该方法最重要的创新在于提出了“联合编码”的思想,即不再孤立地压缩每个KV-Cache块,而是考虑跨请求和输入块的相似性,将相似的块进行融合。这种方法能够更有效地利用KV-Cache中的冗余信息,实现更高的压缩率。与现有方法相比,该方法不需要特定的硬件支持,并且对推理流程的改动较小,更易于部署。

关键设计:关键设计包括:1) 相似性度量方法的选择:可以使用余弦相似度、欧氏距离等不同的度量方法。2) 融合阈值的设定:需要根据实际情况调整融合阈值,以平衡压缩率和精度损失。3) 共享表示的压缩方法:可以使用PCA、量化等不同的压缩方法。4) 缓存块的大小:缓存块的大小会影响压缩率和计算开销,需要进行权衡。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,该方法在多种LLM和基准测试中实现了高达4.38倍的KV缓存压缩,且精度损失可忽略不计。在单机vLLM基准测试中,该方法将token吞吐量提高了约40%,显著优于现有的结构化和自适应压缩基线。这些结果表明,该方法在实际应用中具有很高的价值。

🎯 应用场景

该研究成果可广泛应用于各种需要高并发LLM服务的场景,例如在线客服、智能助手、内容生成等。通过降低KV-Cache的内存占用,可以显著提升LLM的吞吐量,降低延迟,从而改善用户体验。此外,该方法还可以降低部署LLM服务的硬件成本,使其更易于普及。未来,该技术有望进一步扩展到其他类型的深度学习模型,提升其推理效率。

📄 摘要(原文)

Modern large language models (LLMs) drive interactive AI systems but are bottlenecked by the memory-heavy growth of key-value (KV) caches, which limits real-time throughput under concurrent loads. Existing KV-cache compression methods rely on rigid heuristics, disrupt tensor layouts, or require specialized compute, hindering scalability and deployment. We propose joint encoding of KV-cache blocks, which fuses similar blocks across requests and input chunks into shared representations while preserving standard cache structure. This alleviates the KV-cache memory bottleneck, supporting high-concurrency serving without specialized hardware. Theoretically, we analyze the rate-distortion tradeoff of fused cache blocks under a Poisson process model. Empirically, our method achieves up to 4.38 $\times$ KV-cache compression with negligible accuracy loss across diverse LLMs and benchmarks, outperforming recent structured and adaptive compression baselines. In real LLM serving, joint encoding improves the token throughput by $\sim$40\% on a single-machine vLLM benchmark, demonstrating substantial gains in inference throughput. Code is available at https://github.com/sef1/kv_fast_fusion kv_joint_encoding.