Skip to content

大模型推理优化技术概览

推理优化的本质:用内存换时间、用带宽换算力、用并行换吞吐。从资源瓶颈看,最终落到 5 个维度——计算(算子)、内存(KV Cache)、带宽(并行/通信)、调度(批处理/分离)、模型(量化/解码);从工程手段看,可归纳为 5 个方向(见第 2 节)。以下按「引擎 → 方向 → 技术 → 分层要点 → 指标 → 趋势」展开。

1. 推理引擎与服务框架

生产环境通常基于开源推理引擎构建,而非从零写 kernel。主流选择:

引擎定位代表特性深入阅读
vLLM高吞吐、内存高效的开源推理引擎PagedAttention、Continuous Batching、Automatic Prefix Caching、异步调度器(V1)、内置量化与投机解码vLLM 架构设计
SGLang面向复杂推理与多模态的高性能框架RadixAttention(前缀树缓存)、分层缓存(HiCache)、PD 分离、结构化输出SGLang 介绍
TensorRT-LLMNVIDIA 官方优化推理引擎In-flight Batching、深度图优化、FP8/INT4 内核、TP/PP/EP 多级并行
MindIE华为昇腾推理引擎(MindIE-Service 服务化 / MindIE-Turbo 加速库)昇腾 NPU 图编译、量化工具、服务化部署GPU vs 昇腾全景对比
DeepSpeed-Inference / FlashInfer算子/内核级库高性能 attention 与 GEMM 内核、稀疏模板

2. 优化方向总览

推理优化可归纳为 5 个方向

  1. 降低 Host 开销:CUDA Graph 使能、异步调度、异步 KV 传输、PP 并行
  2. 避免快慢卡(负载不均):DPLB(数据并行负载均衡)、EPLB(专家并行负载均衡)、动态 CP
  3. 降低通信占比:掩盖(DBO、共享专家多流)、效率(分层通信)、通信量(量化通信、关闭 TP)
  4. 低精度量化:W8A8、W4A8、小模型训练优化、SP / DSA-CP
  5. 算子融合:MegaMoE、Triton Reject Sampler、访存优化(权重预取、KV Cache 量化)、显存优化(投机解码、WeightShard、SURESH、去冗余计算)

3. 关键技术一览

技术一句话定位深入阅读
KV Cache缓存历史 K/V,避免重复计算自回归前序KV Cache 机制详解
PagedAttention显存分页管理(OS 虚拟分页思想),消除 KV 碎片与浪费PagedAttention
Continuous Batching请求级动态调度,迭代级回收空闲槽位,消除批间等待连续批处理
Chunked Prefill长请求分块预填充,与解码交错,避免阻塞与长尾延迟Chunked Prefill
Prefix Caching前缀树/哈希复用共享前缀 KV,命中即省预填充Prefix Caching
Constrained Decoding约束解码(文法/正则/JSON Schema),保证输出格式
Speculative Decoding草稿模型多 token 并行 + 大模型校验,突破串行瓶颈推测解码完全指南
KV Cache 压缩量化 / 剪枝淘汰 / 检索式 / 稀疏,压缩缓存体积KV Cache 管理与优化架构
Prefill-Decode 分离两阶段分离部署,解耦算力需求,消除互相干扰Prefill-Decode 分离
FlashInfer高性能推理算子库,统一 attention kernel 调度与稀疏模板

4. 分层要点

从底层内核到上层服务,优化分别在三个层次展开:算子层(怎么算)、模型层(算什么东西)、系统层(怎么调度)。上层依赖下层,下层为上层提供算力底座。

4.1 算子层

  • 模型算子:Embedding、Linear、Matmul、RoPE、MHA/GQA/MQA、RMSNorm、Add、Softmax、MLP、MoE
  • 前后处理算子:Argmax、Top-K、Top-P、Temperature
  • Attention 优化:FlashAttention V1–V4(V4 面向 Blackwell、支持 FP8/NVFP4)· FlashInfer · RingAttention · PagedAttention · MLA(FlashAttention 详解MLA
  • 算子加速:FlashMLA(DeepSeek 算子库)· GEMM 优化 · Fused MoE · DeepGEMM
  • 编译优化:torch.compile · CUDA Graph · Triton · MegaMoE(CUDA Graph 一次捕获、多次回放,显著降低 Host 启动开销)

4.2 模型层

  • 算子融合:Add + RMSNorm 融合 · 计算与读写显存融合 · Fused MoE / FlashMLA
  • 推理特点:自回归 · KV Cache · Packing(长度分组填充)
  • 模型量化:Weight-only(GPTQ、AWQ)· Weight-Activation(SmoothQuant、W8A8、FP8);W4A8 精度损失显著,W8A8 为生产甜点
  • KV Cache 量化:FP8 / INT4 / NVFP4,与权重量化互补,进一步省显存
  • MoE 优化:专家并行(EP)· 专家负载均衡(EPLB)· 共享专家多流 · 去冗余计算(MoE 图解指南
  • 模型通信:AllReduce / AllGather / All2All · Tree / Ring AllReduce

4.3 系统层

  • 并行策略:DP(数据)· TP(张量)· PP(流水线)· EP(专家)· CP(上下文/序列)→ 训练技术概论
  • 调度与批处理:Continuous Batching · Chunked Prefill · SLO 感知 · Prefix Caching · 优先级 / 公平 / 长度感知
  • KV Cache 分级:L1-GPU / L2-CPU / L3-Remote · Paged KV / RadixAttention · Offload / 预取 / 淘汰
  • 投机解码:EAGLE V1–V3(基于特征图草稿)· MTP(多 token 预测)· Medusa(多 head 草稿)· DFlash · DSpark · 自投机 / N-gram
  • PD 分离:DistServe · Mooncake(KVCache-centric)· TaiChi · HiCache(Prefill-Decode 分离
  • 稳定性保障:Daily Test / 性能基线 · Metrics / Logs / Trace · 降级 / 故障诊断 / 流量回放

5. 关键性能指标

衡量推理服务质量的核心指标(推理指标):

指标含义优化目标
TTFT首 token 延迟(从请求到首个输出 token)越低越好(受 Prefill 影响)
TPOT / ITL每 token 输出延迟 / token 间延迟越低越好(受 Decode 影响)
Throughput单位时间完成的请求/token 数越高越好
Context Length可处理的最大序列长度KV Cache 与显存共同决定
SLO 达标率延迟/吞吐目标(SLO)下的请求达标比例越高越好(受调度器影响)

6. 新兴趋势

  • 长上下文推理:KV Cache 分级与压缩、稀疏注意力(MiniMax Sparse Attention)、视觉-文本压缩,支撑百万级上下文
  • 多模态推理:视觉 token 压缩、跨模态注意力,降低视觉输入显存占用
  • MoE 大规模部署:宽专家并行(Wide EP)、专家负载均衡成为吞吐关键
  • 异构与国产生态:昇腾(MindIE、vLLM-Ascend)、国产 GPU 适配成为国内落地重点(GPU 与 NPU 硬件组成
  • 编译驱动优化:torch.compile + CUDA Graph 组合持续降低 Host 侧开销

延伸阅读

Maintained by Robin