推理加速

官官方信息技术老师·8 页·深入(追求细节与边界)·0 次浏览·33 天前
信息技术大学

推理加速

AI 与大模型·算法岗面试 · 第 5 章 推理与部署

按 空格/→ 演示下一步

问一句
1 / 8 页

全部页面点击任意一页,跳回舞台从这页播放

信息技术大学

推理加速

AI 与大模型·算法岗面试 · 第 5 章 推理与部署

1第 1 页 · 推理加速

KV Cache

自回归解码的命脉:过去的 K/V 存下来免重算,拿空间换数量级提速。

原理
因果注意力下历史 K/V 不变,缓存复用
代价
缓存随序列长度与批量线性膨胀成显存大户
多查一算
每步只算新 Q,去查全部历史缓存
2第 2 页 · KV Cache

FlashAttention

不动数学改 IO:分块计算加在线 softmax,显存从平方降到线性。

IO 感知
瓶颈在显存读写,分块驻留高速缓存
在线 softmax
分块累加极值与和,数学严格等价
收益
显存线性化,长序列提速数倍
3第 3 页 · FlashAttention

PagedAttention/vLLM

像操作系统管内存一样管 KV:分页存储消除碎片,吞吐成倍提升。

痛点
连续预留造成内外碎片,浪费过半显存
分页
KV 切固定大小块,逻辑连续物理离散
共享
并行采样共享前缀页,写时复制
4第 4 页 · PagedAttention/vLLM

连续批处理

迭代级调度:谁生成完谁出队,新请求随到随插,不再等整批。

静态批痛点
长短请求捆绑,短等长 GPU 空转
连续批
每步重新组批,完成即退新到即进
收益
吞吐提升数倍,时延也更平稳
5第 5 页 · 连续批处理

投机解码

小模型猜大模型验:草稿一次出几步,目标模型并行验证,输出严格一致。

流程
草稿模型连猜 k 步,目标模型一次验证
接受回退
按概率比接受,拒收从拒绝处回退
性质
与目标模型分布完全一致,无损加速
6第 6 页 · 投机解码

本节要点

  • ✓KV Cache:空间换数量级时间
  • ✓FlashAttention 改 IO 不改数学
  • ✓PagedAttention 分页治碎片
  • ✓投机解码:小猜大验,无损
延伸主题:跑一次 vLLM 压测算一算 KV 缓存显存
7第 7 页 · 本节要点

课后思考

先自己回答,再展开参考答案——能讲出来才算真懂。

1KV Cache 为什么只缓存 K 和 V,不缓存 Q?

参考答案每步只有最新 token 的 Q 参与查询,历史 Q 不会再被用到;而历史 K/V 要被每一步的新 Q 反复读取。缓存「会被重复读的」是缓存的基本法。

2投机解码为什么能保证输出分布不变?

参考答案接受概率按目标与草稿模型的概率比设计,拒绝时按残差分布重采样——可证整体输出与目标模型直接采样完全同分布。快而不歪。

3长上下文推理最该先优化什么?

参考答案先看 KV 缓存与注意力:缓存随长度线性涨、注意力平方涨。GQA 与量化先砍缓存,FlashAttention 砍注意力常数,连续批处理榨吞吐——按瓶颈顺序下手。

8第 8 页 · 课后思考