【AI大模型】分页注意力:PagedAttention核心优化原理核心结论:PagedAttention借鉴操作系统虚拟内存的分页思想,把KV缓存切分成固定大小的"页",通过页表管理非连续存储,从而大幅减少显存碎片与浪费,显著提升大模型推理的吞吐与显存利用率。它解决了传统KV缓存预分配导致的内存浪费问题,是高性能推理引擎(如vLLM)的核心技术。一、KV缓存与大模型推理的内存压力理解PagedAttention,需要先了解它要解决的KV缓存问题。这是大模型推理显存压力的主要来源。1.1 什么是KV缓存在自回归生成中,每生成一个token都需要用到前面所有token的键(Key)和值(Value)。为免重复计算,推理引擎会把历史token的K、V缓存在显存中,称为KV缓存。KV缓存随序列增长而增长,是推理显存占用的主要部分。1.2 KV缓存带来的显存压力KV缓存的大小与"序列长度 × 层数 × 注意力头数"成正比,增长迅速。当多个并发请求同时推理时,总KV缓存占用可观,成为显存瓶颈。优化KV缓存的分配,是提升吞吐的关键。1.3 传统KV缓存分配的问题传统方式常按"最大可能序列长度"预分配连续显存块。由于实际长度远小于上限,大量显存被闲置浪费;而连续块要求又加剧了显存碎片。这两个问题,正是PagedAttention要解决的。1.4 为什么KV缓存难以优化KV缓存的大小在生成前无法精确预知——每个请求的实际序列长度只有运行中才确定。这让"预分配"要么浪费(按上限)、要么不足(按实际)。这种不确定性,是KV缓存优化的核心难点,也催生了更聪明的分配方案。