LLM 优化面试笔记:KV Cache、投机解码、ZeRO 与 DualPipe,训练与推理的核心考点一次讲透(附多方学习资源)
LLM 优化面试笔记:KV Cache、投机解码、ZeRO 与 DualPipe,训练与推理的核心考点一次讲透(附多方学习资源) @gauri__gupta 自述这是她为几家头部 AI 实验室的技术...
这是 @gauri__gupta 为 AI 实验室技术面试准备的笔记,系统梳理了训练和推理中的关键优化技术,比如 KV Cache、ZeRO 和 DualPipe,对准备面试的人很有帮助。
这篇笔记详细讲解了大模型系统(MLSys)领域的知识,包括内存优化(如 Flash Attention、MQA/GQA、Activation Checkpointing)、计算优化(Sequence Packing、高效 Transformer 架构)、推理优化(KV Cache 演进、Stateful Caching、Speculative Decoding、量化三件套)和训练优化(混合精度训练、ZeRO、流水线并行、张量并行、Context Parallelism、MoE 专家并行)等核心考点。
LLM 优化面试笔记:KV Cache、投机解码、ZeRO 与 DualPipe,训练与推理的核心考点一次讲透(附多方学习资源) @gauri__gupta 自述这是她为几家头部 AI 实验室的技术...
LLM 优化面试笔记:KV Cache、投机解码、ZeRO 与 DualPipe,训练与推理的核心考点一次讲透(附多方学习资源) @gauri__gupta 自述这是她为几家头部 AI 实验室的技术面试准备期间整理的笔记,把大模型系统(MLSys)领域的知识体系,按“面试会被问到什么”的逻辑压缩成了一张高质量地图。 1. 内存优化:让注意力“算得起” · Flash Attention:用分块(tiling)+ 重计算(recomputation)避免把 N×N 的注意力矩阵完整写进显存,把注意力的内存占用从二次降为线性(计算量仍是二次)。这是目前所有主流推理框架的标配。 · MQA / GQA:多查询注意力和分组查询注意力,让多个 Q head 共享同一组(或分组共享)K/V head,直接缩小 KV cache——这是推理成本的最大头之一。GQA 已是 Llama 2/3、Qwen 等主流模型的默认配置。 · Activation Checkpointing:前向时不存全部中间激活,反向时重算,用约 33% 额外计算换大幅内存节省。 这一板块的逻辑是:显存墙是训练和推理的第一约束,所以面试第一问往往从这里开始。 2. 计算优化:让 token 不被浪费 · Sequence Packing:把多条短序列拼成一条长序列再训练,消除 padding 造成的算力浪费。看似简单,但在真实生产管线中收益很大。 · 高效 Transformer 架构:BigBird、Longformer(稀疏/局部注意力)、低秩近似、LongNet(扩张式注意力)等长上下文路线。 3. 推理优化:信息密度最高的部分 · KV Cache 及其演进:从 GQA,到 DeepSeek 的 MLA(Multi-head Latent Attention,把 KV 压缩到低秩潜空间,KV cache 缩减一个数量级),再到跨层共享 KV、局部+全局注意力交错(Gemini 式方案)。这条线索实际上就是 2023–2026 年推理成本下降的技术主线。 · Stateful Caching:滚动哈希 + 树形前缀缓存 + LRU 淘汰——这基本就是 SGLang 的 RadixAttention 思路:多个请求共享的系统提示词前缀只算一次。这是服务层(而非模型层)的优化,能区分“只懂模型”和“懂生产部署”的候选人。 · Speculative Decoding(投机解码):小模型起草、大模型并行验证,2–3 倍解码提速且数学上保证输出分布不变,这是它优于单纯蒸馏/剪枝的关键。 · 量化三件套:PTQ(训练后量化)、混合精度量化(对敏感层保留高精度)、QAT(量化感知训练,用 STE 直通估计器绕过量化操作不可导的问题)。 4. 训练优化:并行策略全景 全文最系统的部分,可以读成一份“分布式训练决策树”: · 混合精度训练:bfloat16 + loss scaling(一个值得留意的细节:bf16 的动态范围与 fp32 相同,严格说不需要 loss scaling,loss scaling 主要是 fp16 的问题——这类小瑕疵正好说明这是备考笔记而非严谨教材)。 · 数据并行与 ZeRO:DDP 的局限 → ZeRO 三阶段逐步分片优化器状态、梯度、参数,内存缩减分别约为 4x / 8x / 与卡数成线性。 · 通信原语:All-Reduce、Ring All-Reduce(每卡传输开销 2×(N−1)×X/N 字节,这个公式是理解“为什么环形算法能摊薄通信量”的钥匙)、Reduce-Scatter、All-Gather。作者是把这些当成“词汇表”来列的——看懂并行策略论文的前提是先掌握这套词汇。 · 流水线并行:从 GPipe 的 bubble 公式 (d−1)/(m+d−1),到 PipeDream 的 Weight Stashing 解决陈旧权重问题,到 Zero Bubble(ZB-H1/H2 用反向依赖分析填满气泡),最后落到 Llama-3 与 DeepSeek-V3 的 DualPipe 生产实践。这条演进线索梳理得相当漂亮。 · 张量并行:Megatron-LM 的列切分(配 all-gather)与行切分(配 all-reduce)——这是“数学如何映射到通信”的经典案例。 · Context Parallelism:按序列长度维度切分,服务超长上下文训练。 · MoE 专家并行:Top-1/Top-k 路由、负载均衡(device balance loss、DeepSeek-V3 式的 auxiliary-free 无辅助损失均衡)。 # 推荐的学习资源 Stanford CS336: Language Modeling from Scratch cs336.stanford.edu youtube.com/playlist?list=… Stanford CS229S: Systems for Machine Learning web.stanford.edu/class/cs229s/ Stanford CS224n: NLP with Deep Learning web.stanford.edu/class/cs224n/ NVIDIA NeMo(大模型训练框架) github.com/NVIDIA/NeMo Lilian Weng: LLM Inference Optimization lilianweng.github.io/posts/2023-01-… How to Scale Your Model jax-ml.github.io/scaling-book/ ML Systems Book mlsysbook.ai Gauri Gupta @gauri__gupta x.com/i/article/2027… 🔗 View Quoted Tweet 💬 0 🔄 0 ❤️ 1 👀 488 📊 1 ⚡