更多GPU还是更小缓存?张量并行与KV压缩在内存受限LLM服务中的比较

arXiv cs.AI 论文

摘要

本文比较了张量并行和KV缓存压缩技术在内存受限LLM服务中的应用,发现压缩通常更经济,并讨论了基于模型大小与设备内存相对关系的决策规则。

arXiv:2608.23962v1 公告类型:新 摘要:当LLM服务部署的KV缓存空间不足时,有两种成熟的解决方案。张量并行将权重和KV缓存分散到两个、四个或八个设备上,以每层全归约和随设备数量增加的硬件成本为代价,换取内存余量。算法界通过就地缩小缓存,采用KV量化和驱逐策略,保持单GPU运行,牺牲少许质量。压缩论文报告内存比率,并行扩展论文报告吞吐量曲线,但几乎没有人将两者置于同一成本轴上。我们将张量并行配置(度1到8)和KV压缩配置(16/8/4位,保留比率低至0.25)放在一个成本标准化轴上,即每百万token成本与延迟的关系,使用基于A100、A40和H100硬件校准的分析模拟器,并寻找成本等价交叉点。我们未找到该点。在两个模型(Llama-2的7B和70B)、三种GPU类型以及我们能构建的所有内存缓解级别上,压缩成本低1.20倍至2.00倍。一个80GB设备上的7B模型无法在其自身上下文窗口内耗尽KV预算,决定两种策略边界的是模型大小相对于设备内存的关系,对于80GB卡约为36B参数。低于此阈值,压缩占主导,额外GPU大多是浪费;高于此阈值,张量并行不再是可选,而是准入门票:Llama-2-70B在任何KV设置下在一块A100上都不可行,因为绑定资源是权重,而KV压缩不影响权重。张量并行是唯一改善延迟的杠杆(压缩使每token延迟增加8%到93%,通过批处理竞争),而压缩是唯一提高每美元容量的杠杆(16.5倍,相比GPU八倍支出的1.21倍)。
查看原文
查看缓存全文

缓存时间: 2026/08/26 09:18

# 增加GPU还是缩小缓存?张量并行与KV压缩在内存受限LLM服务中的对比  
来源:https://arxiv.org/html/2608.23962  
Srikanta Datta Tumkur, Mehar Simhadri, Anshu Bansal, Jay Iyer, Sai Pavan Kumar, Sai Kapil Kumar, Ramesh Nampelly, Raj Dandekar  

###### 摘要  
当LLM服务部署的KV缓存空间耗尽时,有两种成熟的解决方案,它们来自鲜少交流的两个社区。系统团队选择增加GPU:张量并行通过在两个、四个或八个设备上分片权重和KV缓存,以每层一次全归约通信和随设备数增长的硬件成本为代价,换取内存空间。算法团队则选择原地压缩缓存:通过KV量化与驱逐策略,在仅使用单个GPU的情况下,牺牲少量模型质量来节省空间。压缩论文报告内存缩减比例,并行扩展论文报告吞吐量曲线,几乎没有研究将两者置于同一成本轴上进行对比。因此,面临固定模型、质量底线和延迟目标的从业者,无法判断哪种方案更经济。本文建立了这一对比框架。我们将张量并行配置(1至8度)与KV压缩配置(16/8/4位、保留率低至0.25)统一到成本归一化轴上,即基于真实A100、A40和H100硬件标定的性能分析模拟器,对比每百万token的成本与延迟,并寻找成本等价交叉点。*但结果并未发现此类交叉点*。在两个模型(7B和70B的Llama-2)、三种GPU类型以及所有可构建的内存缓解级别下,压缩方案的经济性始终是张量并行的1.20至2.00倍,且优势随内存释放需求增加而扩大。更深层的发现是:该问题的前提在常规实践规模下并不成立。例如7B模型在80GB设备上,其KV预算在其上下文窗口内永远不会耗尽。真正的策略分界线是模型参数量与设备内存的比值——对于80GB显卡,该阈值约为360亿参数。低于此阈值时,压缩方案占绝对优势,额外GPU基本属于浪费;高于此阈值时,张量并行从可选方案变为必要前提:Llama-2-70B在*任何*KV设置下都无法在单张A100上运行,因为瓶颈在于权重内存,而KV压缩对此无能为力。两种策略的本质差异还体现在:张量并行是唯一能改善延迟的手段(但通过批处理竞争会令单token延迟*恶化*8%-93%),而压缩是唯一能提升单位成本容量的手段(16.5倍,对比八倍GPU投资仅获得1.21倍提升)。最终我们提出基于实证的决策规则——相比原本设想的交叉曲线,这一规则更简洁实用。  

\@IEEEabskeysecsize 索引术语:\@IEEEgobbleleadPARNLSPLLM推理、张量并行、KV缓存压缩、KV量化、成本归一化延迟、内存受限服务、容量规划  

## I 引言  
参考图注:图1:研究概览。(1) 内存受限的服务部署可通过增加GPU(张量并行,分割权重与KV内存但增加全归约通信与成本)或压缩KV缓存(量化与驱逐,保持单GPU但牺牲质量与反量化开销)来解决。(2) 两者在不同文献中以不同指标呈现,从业者难以判断经济性。(3) 我们将二者置于同一成本归一化前沿(每百万token成本 vs 延迟),在固定模型、质量底线与延迟目标下寻找成本等价交叉点。  

当LLM服务部署因上下文过长、批处理过大或两者兼有而面临内存瓶颈时,KV缓存将无法装入单个GPU,必须采取应对措施。两种成熟方案来自不同社区:系统侧的张量并行将权重与KV缓存分片到多个GPU,而上下文并行与长上下文服务栈进一步将设备内存需求随设备数近似线性降低;算法侧的低位宽KV量化与KV驱逐策略则保持单GPU,通过牺牲少量模型质量与少量反量化开销来换取更小内存占用(图1)。问题在于这两种方案几乎没有被置于统一框架下进行成本对比。张量并行论文通常报告随设备数增长的吞吐量或扩展曲线;KV压缩论文报告特定精度目标下的内存缩减比例;近期综述虽归纳了压缩方法,但未与并行扩展进行直接归一化对比。增加GPU和压缩缓存都能扩展KV容量,但前者成本与设备数成正比,后者硬件成本几乎为零,因此唯一公平的比较是在*成本归一化*轴上进行。这种对比极为罕见,却是基础设施决策者最需要的。  

当工程师面临固定模型、质量底线和延迟目标,且需要处理超出单GPU容量的长上下文或大批次时,无法从现有文献中判断租用更多GPU与压缩缓存孰优孰劣。核心问题可明确表述为:在固定模型、质量底线与延迟目标下,增加GPU(张量并行)与压缩KV缓存相比,每百万token的成本孰高孰低?答案的临界点又在哪里?我们原计划绘制一条曲线来回答该问题:固定模型、质量底线与延迟目标,分别扫描张量并行度(1、2、4、8)与KV压缩设置(位宽与保留率),绘制每百万token成本与延迟的关系图,并期望直接从图中读取交叉点。但实际发现构成了本文的主体:在7B、70B模型或我们测试的三种GPU上,交叉点均不存在,且该问题的前提假设在其常规实践规模下并不成立。我们如实报告这些发现,而非调整实验以获得预期曲线,因为经过三种硬件平台与两种模型规模验证的负面结果,对从业者的参考价值远高于人为制造的交叉点。  

### I-A 贡献  
1. 建立了将张量并行与KV压缩配置置于同一成本归一化前沿的对比框架(图3),在该前沿上,未压缩的单GPU基线方案被*严格支配*,且在任何模型规模或测试GPU上均未出现交叉点(第V-A节、第V-C节)。  
2. 揭示了深层机制:张量并行以近似恒定的成本效益购买并发能力,而压缩方案几乎零成本实现同等效果(图6),并通过敏感性分析量化了反量化开销需达到何种程度才能逆转结论(图7)。  
3. 明确了真正的决策边界:模型参数量与设备内存的相对关系(而非上下文长度或批处理大小)——对于80GB设备,该边界位于34B至70B参数之间(基于七款分析模型,图8),并据此提出实用决策规则(表VI)。  

## II 背景与相关工作  
### II-A 张量并行与并行扩展  
张量并行将每层的权重与注意力KV缓存分片到多个GPU,通过每层的全归约通信为代价,使每设备内存需求随设备数近似线性下降。这是部署超出单GPU容量的模型或长上下文缓存的标准方案,也是生产服务的基础。上下文并行将相同思想沿序列维度推进:环形注意力将长序列分布到多个设备,并使键值通信与注意力计算重叠;分离式架构更进一步,将预填充与解码阶段分配到不同机器池。所有这些方案均以硬件与通信成本换取内存空间,这正是我们所分析权衡的一端。  

### II-B KV缓存压缩与驱逐  
权衡的另一端是保持单GPU并压缩缓存。KV量化以低位宽存储键值:KIVI实现2位非对称逐通道量化,KVQuant针对超长上下文采用非均匀数据类型量化预RoPE键值。驱逐策略丢弃低价值token:H2O保留重要token集合,PyramidKV按层动态分配预算,EVICPRESS跨存储层级联合优化压缩与驱逐。变换编码借鉴媒体压缩中的PCA与熵编码实现高压缩比。所有这些方案均以轻微质量损失与反量化开销为代价缩减内存,且无需额外GPU。需注意KV压缩不同于*权重*量化——后者压缩另一个大型常驻张量。该区分在我们的结果中至关重要,因为第V-B节所述的可行性边界由权重内存决定,KV压缩对此无能为力,而权重量化可能改变该边界。投机解码与高效注意力内核分别从不同维度加速推理,不属本文范畴。  

### II-C 为何两者罕见对比  
并行扩展研究通常报告吞吐量或扩展效率随设备数的变化;压缩研究则报告特定精度目标下的内存缩减比例。近期综述指出,KV缓存压缩研究常未同时报告吞吐量与端到端延迟,导致其难以与并行扩展进行直接归一化对比。我们的贡献在于将两者统一到预算决策者最关注的成本轴上,并认真分析该轴所揭示的规律。  

### II-D 成本归一化对比与帕累托支配  
在单一成本轴上,若另一配置在所有指标(质量、延迟、每百万token成本)上至少持平且在至少一项指标上更优,则该配置被*支配*。*帕累托前沿*由所有非支配配置构成;若存在成本等价交叉点,则应位于该前沿上张量并行与KV压缩配置成本相等的点。每百万token成本由吞吐量、每GPU小时成本与设备数(针对张量并行配置)推导得出,使得增加GPU与压缩缓存终于具有可比性。这种要求每个数据点明确标注配置的标准化报告规范(遵循标准化推理基准精神),其价值不亚于数据本身。  

### II-E 大规模配置空间的模拟  
配置空间呈组合爆炸,穷举测量不可行。基于性能分析的模拟器(如Vidur)通过真实硬件实验数据建模LLM算子性能,可在9%误差内估算端到端推理延迟,高效搜索数百种部署配置;LLMServingSim则将执行图模拟器与网络模拟器结合实现类似目标。我们选用Vidur作为运行时基座。第IV节将说明该选择允许与不允许的声明范畴,我们对此严格区分,因研究未使用自有GPU。  

### II-F 研究定位  
我们最初将成本等价曲线作为目标交付物:在固定模型、质量底线与延迟目标下,将张量并行与KV压缩配置置于同一成本归一化前沿,并报告交叉点随上下文长度与批处理大小的变化。但实证结果呈现的是可行性边界与两种互补机制,而非交叉点——本文如实报告此结果。现有模拟器均未建模KV量化或驱逐(均假设fp16 KV),压缩研究亦未报告每百万token成本,因此连接两个文献的层本身就是一项贡献,其假设构成主要风险;我们在第V-A节明确界定这些假设。  

## III 方法论  
参考图注:图2:成本等价分析流程。固定模型、质量底线与延迟目标。一侧扫描张量并行度(1、2、4、8):每步将每GPU的权重与KV内存减半,增加全归约通信,成本乘以设备数。另一侧扫描KV压缩设置(位宽与保留率)。两个分支通过性能分析模拟器评估,置于同一成本归一化前沿(每百万token成本 vs 延迟),读取各情境下的优势方案,若存在交叉点则标出。示意图展示原始设计流程;实际研究用Llama-2模型替代图示的Llama-3-8B(第IV节),其标定数据继承自分析基座模拟器而非自主测量;图中“测量锚点”与“交叉点”仅为设计意图,第V节报告未发现交叉点。  

### III-A 坐标轴与成本归一化前沿  
每个配置置于三类坐标轴:*延迟*(TTFT与TPOT,各含P50与P99)、*吞吐量与内存*(token/s、每设备KV占用、可行性)、*成本*(美元/百万token)。成本轴是使两种方案可比的关键:每百万token成本由每GPU小时成本、设备数与吞吐量推导得出。

相似文章

也许将KV缓存卸载到RAM并不差

Reddit r/LocalLLaMA

一位用户分享了在llama.cpp中将KV缓存卸载到RAM的经验,在释放显存以便运行更大模型和上下文窗口的同时,实现了相近的速度,表明这种权衡通常是值得的。