InnerQ: Hardware-aware Tuning-free Quantization of KV Cache for Large Language Models
作者: Sayed Mohammadreza Tayaranian Hosseini, Amir Ardakani, Warren J. Gross
分类: cs.LG, cs.CL
发布日期: 2026-02-28
💡 一句话要点
InnerQ:硬件感知、免调优的KV缓存量化方案,加速大语言模型推理。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大语言模型 KV缓存 量化 硬件感知 推理加速
📋 核心要点
- 大语言模型解码时,KV缓存占用大量内存,成为长序列生成的瓶颈,现有量化方法压缩效果有限。
- InnerQ沿KV缓存矩阵内维度进行分组量化,对齐反量化与向量-矩阵乘法,减少内存访问,加速反量化。
- InnerQ采用混合量化、高精度窗口和逐通道归一化等技术,在保证精度的前提下,显著提升了推理速度。
📝 摘要(中文)
本文提出InnerQ,一种硬件感知的KV缓存量化方案,旨在降低解码延迟且不牺牲精度,从而提升大语言模型长序列生成的效率。InnerQ采用组量化,并沿KV缓存矩阵的内维度进行分组。与以往沿外维度分组的方法不同,InnerQ将反量化与向量-矩阵乘法对齐,并允许在GPU计算单元间复用缩放因子,从而减少内存访问并加速反量化,相比现有技术加速高达22%,相比半精度向量-矩阵乘法加速高达88%。为在高压缩率下保持保真度,InnerQ结合了(i)混合量化,基于局部统计信息为每个组选择对称或非对称量化;(ii)高精度窗口,用于最近的token和注意力sink token,以减轻异常值泄漏;(iii)key缓存的逐通道归一化,在预填充期间计算一次并折叠到query中,以避免运行时开销。在Llama模型上的评估实验表明,InnerQ在few-shot GSM8K性能上与非量化KV缓存相当,并优于先前的KV缓存量化方法。
🔬 方法详解
问题定义:大语言模型在解码阶段,KV缓存的大小随着序列长度线性增长,成为内存瓶颈。现有的KV缓存量化方法通常在外维度上进行分组,导致反量化过程需要额外的内存访问,效率较低,并且在高压缩率下容易损失精度。
核心思路:InnerQ的核心思路是沿KV缓存矩阵的内维度进行分组量化,这样可以将反量化操作与向量-矩阵乘法对齐,从而减少内存访问,提高计算效率。此外,InnerQ还通过混合量化、高精度窗口和逐通道归一化等技术来提高量化精度,从而在高压缩率下保持模型的性能。
技术框架:InnerQ的整体框架包括以下几个主要步骤:1) 预填充阶段:计算key缓存的逐通道归一化参数,并将其折叠到query中。2) 量化阶段:对KV缓存进行分组量化,并根据局部统计信息选择对称或非对称量化。3) 解码阶段:从KV缓存中读取量化后的数据,进行反量化,并与query进行向量-矩阵乘法计算注意力权重。4) 后处理阶段:根据注意力权重计算上下文向量,并生成下一个token。
关键创新:InnerQ的关键创新在于:1) 内维度分组量化:将反量化与向量-矩阵乘法对齐,减少内存访问。2) 混合量化:根据局部统计信息选择对称或非对称量化,提高量化精度。3) 高精度窗口:对最近的token和注意力sink token使用高精度量化,减轻异常值泄漏。4) 逐通道归一化:在预填充阶段计算一次,避免运行时开销。
关键设计:InnerQ的关键设计包括:1) 分组大小的选择:需要根据硬件架构和模型大小进行调整,以达到最佳的性能。2) 混合量化的阈值:需要根据数据集和模型进行调整,以平衡量化精度和计算复杂度。3) 高精度窗口的大小:需要根据序列长度和模型大小进行调整,以保证模型的性能。
📊 实验亮点
实验结果表明,InnerQ在Llama模型上实现了显著的性能提升。相比于之前的KV缓存量化方法,InnerQ加速高达22%,相比于半精度向量-矩阵乘法加速高达88%。同时,InnerQ在few-shot GSM8K性能上与非量化KV缓存相当,表明其在保证精度的前提下,显著提升了推理速度。
🎯 应用场景
InnerQ可应用于各种需要高效长序列生成的大语言模型应用场景,例如:智能对话、文本摘要、机器翻译、代码生成等。通过降低内存占用和加速推理速度,InnerQ能够使大语言模型在资源受限的设备上运行,并提高用户体验。未来,InnerQ有望成为大语言模型部署和应用的关键技术。
📄 摘要(原文)
Reducing the hardware footprint of large language models (LLMs) during decoding is critical for efficient long-sequence generation. A key bottleneck is the key-value (KV) cache, whose size scales with sequence length and easily dominates the memory footprint of the model. Previous work proposed quantization methods that are focused on compressing the KV cache while maintaining its information. We introduce InnerQ, a hardware-aware KV-cache quantization scheme that lowers decode latency without sacrificing accuracy. InnerQ applies group-wise quantization while grouping the cache matrices over their inner dimension. Unlike previous work that group over the outer dimension, InnerQ aligns dequantization with the vector-matrix multiplication and enables scale factor reuse across GPU compute units. This reduces memory accesses and accelerates dequantization, yielding up to $22\%$ speedup over previous work and up to $88\%$ over half-precision vector-matrix multiplication. To preserve fidelity under aggressive compression, InnerQ incorporates (i) hybrid quantization, selecting symmetric or asymmetric quantization per group based on local statistics; (ii) high-precision windows for both the most recent tokens and the attention sink tokens to mitigate outlier leakage; and (iii) per-channel normalization of the key cache, computed once during prefill and folded into the query to avoid runtime overhead. Our evaluation experiments on Llama models shows that InnerQ maintains a few-shot GSM8K performance comparable to non-quantized KV caches and surpasses prior KV cache quantization methods.