技术深度解析
LLM推理优化的根本性转变,最好通过“内存墙”的视角来理解。从Llama 3 70B到GPT-4级别的模型,现代LLM越来越受限于内存带宽,而非计算能力。一个70B参数模型的前向传播,需要将约140GB的权重(FP16精度)从HBM加载到GPU的SRAM和寄存器中。H100上HBM3e提供约3.35 TB/s的带宽,理论上该数据传输的最小时间约为42毫秒。实际上,单个token的注意力层和前馈网络层的计算可能只需5-10毫秒。其余全是纯粹的数据搬运开销。
这引出了核心优化原则:最小化数据移动,最大化每字节加载的计算密度。 最具影响力的技术是内核融合。与其启动数十个小GPU内核(例如,一个用于层归一化,一个用于QKV投影,一个用于注意力softmax,一个用于输出投影),融合内核将这些操作合并为单个更大的内核。这减少了启动开销,提高了L1/L2缓存复用率,并将数据保留在最快的内存层级中。开源项目vLLM(GitHub星标超过40,000)开创了PagedAttention,它将内存管理与注意力计算融合,减少了内存碎片,实现了近乎完美的批处理利用率。另一个关键仓库是NVIDIA的TensorRT-LLM,它提供了一个全面的框架,用于图优化、内核自动调优和动态批处理。
第二个关键技术是推测解码。不是用大模型逐个生成token,而是用一个快速的小模型(草稿模型)提出多个候选token,然后由大模型并行验证。这用计算换取了内存带宽效率。例如,使用1.3B参数的草稿模型配合70B目标模型,在延迟敏感型任务上可实现2-3倍的加速,如Google的Medusa和GitHub上的开源Speculative Decoding实现所示。
第三,量化不再仅仅是减小模型体积。FP8和INT4量化技术,尤其是与激活感知缩放(如GPTQ和AWQ算法)结合时,减少了每个权重必须移动的比特数。将4比特而非16比特的数据移动,直接降低了4倍的内存带宽压力,从而支持更大的批处理量和更高的吞吐量。llama.cpp项目(星标超过70,000)已成为在消费级硬件上运行量化LLM的事实标准,证明了系统级优化可以民主化对强大模型的访问。
数据表:推理优化技术及其影响
| 技术 | 机制 | 典型吞吐量增益 | 硬件要求 | 开源参考 |
|---|---|---|---|---|
| 内核融合 | 将多个GPU内核合并为一个 | 1.5倍 - 2.5倍 | 无(仅软件) | TensorRT-LLM, vLLM |
| 推测解码 | 小模型提议,大模型验证 | 2倍 - 3倍 | 无(仅软件) | Medusa, Speculative Decoding仓库 |
| FP8量化 | 将权重精度从16位降至8位 | 1.8倍 - 2.2倍 | H100/H200原生FP8支持 | TensorRT-LLM, vLLM |
| INT4量化 (AWQ/GPTQ) | 将权重精度降至4位 | 3倍 - 4倍 | 无原生支持,软件模拟 | llama.cpp, AutoAWQ, AutoGPTQ |
| 动态批处理 | 动态向运行中的批次添加请求 | 2倍 - 5倍 | 无(仅软件) | vLLM, TensorRT-LLM |
数据要点: 最令人印象深刻的收益来自多种技术的组合。一个使用vLLM、动态批处理、INT4量化和内核融合的部署,在相同硬件上,相比朴素的PyTorch实现,可实现8-12倍的吞吐量提升。这是一场纯软件的革命。
关键玩家与案例研究
引领这场系统级优化竞赛的公司,不一定是模型创造者。NVIDIA在TensorRT-LLM上投入巨资,该框架现已成为其DGX Cloud和企业推理产品的支柱。其策略很明确:通过提供最佳软件栈,使其硬件不可或缺。Meta通过PyTorch生态系统开源了其内部推理优化,包括torch.compile和最近发布的、支持连续批处理的TorchServe。这使得Meta在推理基础设施领域成为关键玩家,即便他们同时用自己的Llama模型参与竞争。
Together AI和Fireworks AI是两家将整个价值主张建立在推理优化之上的初创公司。Together AI的API由其定制推理引擎驱动,声称对于Llama 3 70B等模型,延迟比标准实现低3倍。Fireworks AI由前Google和NVIDIA工程师创立,专注于“fireworks-fast”推理,实现了70B模型的首token延迟低于100毫秒。