引言
提升大模型推理性能,本质上是一场在算力(FLOPs)、显存(或者说HBM)和带宽(Bandwidth)之间博弈。
由于大模型推理是“访存密集型”任务(Decoding阶段尤其受限于显存带宽),单纯堆算力往往事倍功半。
本文主要从算法、系统、硬件、调度四个维度,系统性梳理大模型推理的优化思路。
1、算法与模型结构优化(源头减负)
这是收益最高的层面,直接减少计算量和显存占用。
- 量化(Quantization):将权重和激活从FP16降为FP8/INT8/INT4。AWQ和GPTQ是主流方案,可接近无损地实现2~4倍加速。
- 稀疏化与剪枝:利用ReLU等激活函数的稀疏性,或结构化剪枝去掉不重要的Attention Head,直接减小模型体积。
- 架构革新:如 MoE (混合专家) —— 每次只激活部分专家(如Gork、DeepSeek),大幅降低计算量,但需注意显存占用(需配合专家并行)。
2、推理引擎与运行时优化(工程魔法)
这是工业界落地最硬核的部分,核心是KV Cache的极致管理。
- PagedAttention / vLLM:借鉴操作系统的虚拟内存分页,将KV Cache分割成块,消除显存碎片,支持连续批处理(Continuous Batching),请求到达即处理,显著提升吞吐量。
- FlashAttention:利用FlashAttention重计算中间状态以减少显存读写。
- MLA:Deepseek的MLA(多头隐式注意力)能大幅压缩KV Cache尺寸,变相提升并发能力。
- Chunked Prefill:将长提示词(Prefill阶段)切块,与解码(Decode)阶段混合执行,避免大Batch下的首Token延迟过高,同时提升GPU利用率。
- 投机采样(Speculative Decoding):用小草稿模型(Draft Model)快速生成多个Token,再用大模型并行验证。在带宽受限时,可翻倍提升Decode速度。
3、硬件加速(底层红利)
- GPU/服务器选型: 如选用H100等带FP8 Transformer Engine(NVIDIA 面向 Transformer 大模型、原生支持 FP8 低精度的加速库)的卡;利用NVLink高速互联解决多卡间KV传输瓶颈。
- 网络选型:如使用IB(InfiniBand)、ROCE 网卡补成跨服务器、跨机架的集群 RDMA 网络。
4、服务调度与请求策略(宏观提速)
- 提示词缓存(Prompt Caching):如果用户频繁问相似前缀(如系统指令),缓存这段的KV状态,省重复预填充(DeepSeek和Claude均已采用此策略,成本暴降)。
动态批处理(Dynamic Batching):不等待完整批次,凑够几个就执行,降低平均排队时间。