Skip to content

推理优化专栏导览 ​

标签
AI/infra
字数
1230 字
阅读时间
5 分钟

本目录收把训好的模型跑起来对外服务的那一层:请求怎么调度、显存怎么管、算子怎么选、服务怎么部署。

它与相邻专栏的边界是关注点而不是目录层级:

不收去哪看本专栏只关心
硬件本身 —— 架构、存储层次、算力与带宽、多卡互联GPU 与加速器这两条上限如何决定推理快慢
在硬件上写 kernel —— 编程模型、访存优化、经典算子CUDA 与算子优化该给哪一类 kernel 配什么后端
用多块硬件训练 —— 框架、切分策略、通信、显存账本训练推理侧的并行目标与训练有何不同

换个说法:前三者回答“模型怎么算出来、怎么训出来”,本专栏回答“训完之后怎么把它服务出去”。

数值精度是横切面,写在上层的 01-数值计算与精度:公式在有限精度下会怎么失真,四块都被它约束。

阅读顺序 ​

01 → 05 是一条递进线,按「先定位瓶颈、再逐个攻」排:

篇解决什么
01-推理性能指标与瓶颈定位建立坐标系:TTFT/TPOT/Goodput 怎么定义,算术强度与 Roofline 怎么解释「Decode 为什么打不满算力」
02-PagedAttention:KV Cache 的分页管理显存怎么存 —— 消灭碎片的按需分块
03-推理调度:Continuous Batching 与 Chunked Prefill请求怎么排 —— 每一步重新组批、长 Prefill 怎么切
04-前缀缓存:APC 与 RadixAttention算过的怎么复用 —— 跳过重复 Prefill
05-Attention 后端与图优化指令怎么少发 —— 把 CPU 发射开销压掉
06-vLLM 部署、参数与服务特性落到具体引擎:参数、服务特性、生产运维
07-端侧推理换一种约束:手机、车机、嵌入式

08 → 10 是在前面基础上的三种进阶手段,方向各不相同:

篇换的是什么
08-量化用位宽换显存、带宽与算力
09-Speculative Decoding用闲置的算力换串行步数
10-PD 解耦架构用一次 KV 传输换两阶段的独立调优

11 是从「一个实例」上升到「一个集群」的那一层——前面十篇的对象都是单个推理实例(一块或几块卡上的一个引擎),11 讲实例之外:请求怎么进来、怎么分到多个副本、多张卡怎么摆、集群怎么伸缩、出问题按什么顺序查。引擎之间的选型也在这一层的视角下看(矩阵在 06-vLLM 部署、参数与服务特性)。

篇解决什么
11-服务部署架构:集群、路由与运维四层架构、负载均衡与前缀感知路由、多模型路由与级联、弹性伸缩与冷启动、多实例 vs 跨节点 MP、Triton 的位置、监控告警与成本优化

02 与 03 必须连着读。 分页给的是「细粒度可回收的显存」,调度要的正是这个;没有分页,动态补位无从谈起。反过来只分页不调度,省下的显存也变不成吞吐。这对关系在本目录里反复出现。

一条贯穿全目录的判据:

Decode 阶段的瓶颈在显存带宽,不在算力。 这一条决定了几乎所有推理优化技术的方向:

  • PagedAttention 省的是显存(能塞更多并发请求)
  • Continuous Batching / Chunked Prefill 把已经省出的显存变成吞吐与稳定的 TPOT
  • 前缀缓存 直接砍掉重复的 Prefill 计算
  • Attention 后端与图优化 压掉 Decode 阶段另一重瓶颈 —— CPU 发射指令的开销

硬件侧的推导(算术强度 ≈ 1 FLOP/Byte 与 295 FLOP/Byte 的平衡点)在 01-推理性能指标与瓶颈定位 有完整算例。

相关 ​

参考 ​

贡献者 ​

文件历史 ​