# 大模型推理的延迟、吞吐与定价逻辑
本播客翻译整理自英文原播客《Reinerpope》。
> 用少量公式、公开 API 定价和系统约束,拆解大模型推理中的延迟、吞吐、长上下文成本,以及训练与部署背后的经济逻辑。
## 导语
本播客翻译整理自英文原播客《Reinerpope》。这是一期偏技术但非常值得听的“大模型基础设施课”。节目从用户最直观的“为什么更快响应要更贵”讲起,一路推到 batch size、内存带宽、KV cache、MoE 通信、流水线并行,再延伸到 API 定价与训练规模反推。最大亮点是:很多看似黑箱的前沿模型服务策略,其实可以用几条简单的系统模型和公开价格信息推出来。
## 主持人
本期主持人以追问“现象背后的第一性原理”为主线,不停把抽象的训练与推理问题落到用户可感知的延迟、吞吐和价格上。这种从产品体验一路追到硬件、并行策略和成本结构的提问方式,让整期内容既有技术深度,也更容易建立整体理解。
## 嘉宾
Reiner Pope 以近似“黑板推导”的方式讲解前沿大模型是如何训练和服务的。他的价值不在于罗列结论,而在于把芯片带宽、模型结构、并行策略、上下文长度和商业定价放进同一套分析框架里,帮助听众看清这些系统约束是如何共同决定模型能力与成本的。
## 原始页面
- 原始链接:[Reiner Pope – The math behind how LLMs are trained and served](podcasts.apple.com)
## 亮点
- 从 batch size 入手,解释为什么推理延迟有下界、为什么批处理会直接影响价格与吞吐。
- 用屋顶线分析拆开计算时间、权重读取和 KV 缓存读取,说明长上下文为什么会迅速把系统拖向内存瓶颈。
- 讲清 MoE 的真实收益与代价:稀疏性可以省算力,但扩展上限常常卡在机架内外的全对全通信。
- 对比专家并行与流水线并行,说明它们分别解决什么问题,以及流水线气泡、微批处理和 KV 缓存为何限制了实际收益。
- 从公开 API 定价反推底层成本结构,分析长上下文价格拐点、每 token 的 KV cache 开销,以及解码为何比预填充更贵。
- 进一步把推理吞吐、部署时长与缩放规律联系起来,讨论预训练、强化学习和最终推理三部分成本为何可能逐渐接近。
## 章节目录
- `` 批大小如何决定推理延迟与成本
这一章从用户常见的“加钱换更快响应”现象切入,解释了大模型推理里延迟和价格背后的核心变量其实是批大小。Reiner 用屋顶线分析把推理时间拆成计算时间、权重读取时间和 KV 缓存读取时间,并说明不同瓶颈如何随批大小和上下文长度变化。重要之处在于,这套简单模型已经足以解释为什么延迟存在下界、为什么批处理极其关键,以及为什么上下文长度会显著影响系统效率。
- `` 批大小、带宽与推理吞吐
这一章围绕推理中的批大小展开,解释了随着 batch 增大,权重读取等内存开销会被摊薄,系统最终从带宽瓶颈转向计算瓶颈。对话进一步给出一个实用估算:临界批大小大致与硬件常数和模型稀疏度相关,常见 GPU 上可近似看作“批大小大于约 300 倍稀疏度”,实践中往往还会再放大。后半段又把这个结果换算成排队延迟、HBM 读写时间和每秒 token 吞吐,帮助理解它在真实服务系统里的意义。
- `` MoE稀疏性的收益与机架通信瓶颈
这一章先讨论提高 MoE 稀疏度对模型质量的实际影响:在一些早期实证结果里,固定激活参数规模时,增加专家数量仍能提升效果,但总参数增长与收益并不成比例。随后话题转向工程实现,解释了标准 MoE 层的路由方式、专家并行在 GPU 上的铺法,以及由此产生的全对全通信模式。最后重点说明,MoE 的规模上限往往不是算法本身,而是机架内外网络带宽、交换结构和布线密度等硬件约束。
- `` 机架扩展、并行策略与流水线气泡
这一章先从机架的物理限制讲起,解释了线缆空间、重量、供电和散热如何共同限制大模型部署规模,也由此引出更大内存机架为何推动了超大参数模型落地。随后讨论了 MoE 的通信模式,以及为什么专家并行更适合同机架内,而跨机架更适合采用流水线并行。最后一部分分析了流水线并行的收益与代价:它主要缓解的是每个机架的内存容量瓶颈,但也会带来微批处理、流水线气泡和架构实现复杂度等问题。
- `` 流水线训练与推理中的内存权衡
这一章先解释了训练里的流水线并行为什么需要在前向传播后“硬停顿”,再统一切到反向传播,以及批大小在收敛效率和系统总训练时间之间的权衡。随后讨论推理阶段的流水线并行:它对延迟基本中性,主要作用是降低每个机架需要承载的权重内存。进一步分析后指出,随着流水线阶段增加,权重内存会下降,但 KV 缓存不会因此按 GPU 继续缩小,最终会成为主导项,这也解释了为什么实际推理更偏向大量专家并行、少做流水线。
- `` 推理扩展的瓶颈与训练推理成本平衡
这一章先讨论前沿实验室在推理时为何大多仍处于单一 scale-up 域内,并区分了流水线能解决模型容量问题、却不能解决上下文长度问题。对话进一步指出,真正限制更大规模推理的关键不是内存容量,而是跨机架带来的延迟和权重加载所需的内存带宽。后半段转向训练与推理的总成本权衡,用启发式方法估算预训练、强化学习和最终推理三部分的计算投入,认为三者在成本上可能会趋于接近。
- `` 从推理成本反推训练规模与定价
这一章先讨论了 RL token 与预训练 token 的成本权衡,并尝试用推理吞吐、部署时长和 Chinchilla 缩放定律,粗略反推出模型可能的预训练数据规模与“过度训练”程度。随后话题转向 API 定价,结合 Gemini 1.5 在长上下文下的分档价格,分析上下文长度如何影响计算与内存成本。最后,他们进一步用价格拐点估算每个 token 的 KV cache 字节数,并讨论这种数量级在稠密注意力和稀疏注意力设计下为何是合理的。
- `` 长上下文的内存瓶颈与缓存成本
这一章围绕预填充、解码和 KV 缓存的成本结构展开,讨论为什么解码比预填充贵得多,以及这背后反映出的内存带宽瓶颈。对话进一步比较了缓存命中、重计算和不同内存层级(HBM、DDR、Flash)的取回与持有成本,说明长上下文真正受限的不是纯算力,而是内存带宽和容量。这也解释了为什么上下文长度在近年停留在几十万 token 附近,难以继续大幅扩展。
- `` 内存层级成本与可逆网络
这一章先讨论推理部署中的内存层级选择,围绕 HBM、DDR、闪存和机械硬盘,解释“持有时间”和“取回时间”如何共同决定成本,并尝试从 API 的时长与价格反推底层使用的是哪一层存储。随后话题转向密码学与神经网络的相似性与差异,尤其是两者都依赖信息混合,但优化目标几乎相反。最后重点介绍了从密码学借鉴来的费斯特尔结构和可逆网络,说明它如何在训练中用更多计算换取更低的激活内存占用。
- `` 结束致谢
这一章只有简短的结束语,表达了感谢。内容虽短,但明确传达了对对方参与和回应的礼貌致意,标志着这段交流的收尾。
## 章节摘要
### - 批大小如何决定推理延迟与成本
这一章从用户常见的“加钱换更快响应”现象切入,解释了大模型推理里延迟和价格背后的核心变量其实是批大小。Reiner 用屋顶线分析把推理时间拆成计算时间、权重读取时间和 KV 缓存读取时间,并说明不同瓶颈如何随批大小和上下文长度变化。重要之处在于,这套简单模型已经足以解释为什么延迟存在下界、为什么批处理极其关键,以及为什么上下文长度会显著影响系统效率。
- 推理性能分析主要看两类硬件约束:内存带宽和算力吞吐。
- 计算时间大致随批大小线性增长,而内存时间由固定的权重读取和随批大小增长的 KV 缓存读取组成。
- 对固定硬件配置而言,延迟存在下界,因为模型总参数必须先从内存读入芯片。
- 上下文长度变长会推高 KV 缓存读取开销,使系统从算力受限转向内存受限;稠密注意力通常近似线性增长,稀疏注意力扩展性更好。
### - 批大小、带宽与推理吞吐
这一章围绕推理中的批大小展开,解释了随着 batch 增大,权重读取等内存开销会被摊薄,系统最终从带宽瓶颈转向计算瓶颈。对话进一步给出一个实用估算:临界批大小大致与硬件常数和模型稀疏度相关,常见 GPU 上可近似看作“批大小大于约 300 倍稀疏度”,实践中往往还会再放大。后半段又把这个结果换算成排队延迟、HBM 读写时间和每秒 token 吞吐,帮助理解它在真实服务系统里的意义。
- batch size 很小时,权重和 KV 的读取开销难以分摊,单位成本很高;batch 变大后,计算时间会逐渐成为主导。
- 为简化分析,讨论中先忽略 KV fetch,把权重读取时间与权重乘法时间设为相等,得到临界批大小与 FLOPS、内存带宽和稀疏度的关系。
- 在大多数 GPU 上,这个硬件比值大约是 300,因此可粗略估算批大小需要大于约 300 倍稀疏度;像 DeepSeek 这类稀疏模型会落到约 2000 到 3000 token 的量级。
- 系统可以按固定节拍发出新 batch,例如每 20 毫秒一班;这决定了最坏排队延迟,并可进一步换算出每秒 token 吞吐的大致规模。
### - MoE稀疏性的收益与机架通信瓶颈
这一章先讨论提高 MoE 稀疏度对模型质量的实际影响:在一些早期实证结果里,固定激活参数规模时,增加专家数量仍能提升效果,但总参数增长与收益并不成比例。随后话题转向工程实现,解释了标准 MoE 层的路由方式、专家并行在 GPU 上的铺法,以及由此产生的全对全通信模式。最后重点说明,MoE 的规模上限往往不是算法本身,而是机架内外网络带宽、交换结构和布线密度等硬件约束。
- 实证结果显示,在固定激活参数规模时,提高 expert count 仍可能提升模型质量,但需要用大幅增加的总参数换取有限收益。
- 提高稀疏度可以节省计算时间,但通常需要更大的 batch size 来摊薄内存读取开销,同时也会增加内存容量需求。
- 标准 MoE 层由路由器、多个专家 MLP、汇聚求和和残差连接组成,部署时通常采用专家并行,把不同专家放到不同 GPU 上。
- MoE 的通信模式是全对全,机架内高速互连较适合这种模式,但跨机架通信通常慢很多,因此会成为扩展 expert layer 的主要瓶颈。
### - 机架扩展、并行策略与流水线气泡
这一章先从机架的物理限制讲起,解释了线缆空间、重量、供电和散热如何共同限制大模型部署规模,也由此引出更大内存机架为何推动了超大参数模型落地。随后讨论了 MoE 的通信模式,以及为什么专家并行更适合同机架内,而跨机架更适合采用流水线并行。最后一部分分析了流水线并行的收益与代价:它主要缓解的是每个机架的内存容量瓶颈,但也会带来微批处理、流水线气泡和架构实现复杂度等问题。
- 现代机架已经逼近物理极限,线缆空间、机架重量、供电和散热之间存在明显的相互制约。
- 总参数规模受纵向扩展能力限制,而激活参数规模更多受算力成本限制;更大的 scale-up 域让 5T 级模型加上 KV 缓存成为可能。
- MoE 的全对全通信强烈偏好同机架内的完整连接,因此跨机架时更适合结合数据并行或流水线并行。
- 流水线并行本身不直接提升推理运行时间,但能显著降低单个机架的内存压力;代价是需要微批处理,并会引入流水线气泡和实现上的复杂性。
### - 流水线训练与推理中的内存权衡
这一章先解释了训练里的流水线并行为什么需要在前向传播后“硬停顿”,再统一切到反向传播,以及批大小在收敛效率和系统总训练时间之间的权衡。随后讨论推理阶段的流水线并行:它对延迟基本中性,主要作用是降低每个机架需要承载的权重内存。进一步分析后指出,随着流水线阶段增加,权重内存会下降,但 KV 缓存不会因此按 GPU 继续缩小,最终会成为主导项,这也解释了为什么实际推理更偏向大量专家并行、少做流水线。
- 训练中的流水线并行需要先积累完整批次,再统一进入反向传播,否则会出现流水线空泡。
- 批大小越小越有利于收敛,但从系统总训练时间看又更差,最优点来自两者之间的折中。
- 在推理里,流水线并行不会改善延迟,只是把模型权重分摊到更多机架上,从而降低单机架内存需求。
- 增加流水线阶段会持续降低权重占用,但 KV 缓存无法在批大小或流水线阶段上有效摊薄,因此很快成为主要内存瓶颈。
### - 推理扩展的瓶颈与训练推理成本平衡
这一章先讨论前沿实验室在推理时为何大多仍处于单一 scale-up 域内,并区分了流水线能解决模型容量问题、却不能解决上下文长度问题。对话进一步指出,真正限制更大规模推理的关键不是内存容量,而是跨机架带来的延迟和权重加载所需的内存带宽。后半段转向训练与推理的总成本权衡,用启发式方法估算预训练、强化学习和最终推理三部分的计算投入,认为三者在成本上可能会趋于接近。
- 流水线并不能提升上下文长度,但可以帮助容纳更大的模型参数,因此机架容量未必是模型规模的主要限制。
- 跨机架推理的主要问题是延迟,尤其在解码阶段是串行执行时,这些延迟无法被并行隐藏。
- 更大的 scale-up 域之所以重要,核心不在总内存容量,而在于可以并行利用更多 GPU 的内存带宽来加载权重。
- 按对预训练、强化学习和推理成本的启发式估算,这三类 token 数量最终可能处在相近量级。
### - 从推理成本反推训练规模与定价
这一章先讨论了 RL token 与预训练 token 的成本权衡,并尝试用推理吞吐、部署时长和 Chinchilla 缩放定律,粗略反推出模型可能的预训练数据规模与“过度训练”程度。随后话题转向 API 定价,结合 Gemini 1.5 在长上下文下的分档价格,分析上下文长度如何影响计算与内存成本。最后,他们进一步用价格拐点估算每个 token 的 KV cache 字节数,并讨论这种数量级在稠密注意力和稀疏注意力设计下为何是合理的。
- 如果按总机器时间拉平,RL 的效率低于预训练,因此 RL token 数通常应少于预训练 token 数。
- 他们用每秒 token 吞吐和两个月部署期做估算,得到单个模型可能服务约两百万亿个 token,并拿它与 Chinchilla 最优 token 数比较。
- Gemini 1.5 在超过 20 万上下文 token 后价格上涨 50%,被解读为成本曲线在该处接近计算时间与内存时间的交叉点。
- 基于 20 万 token 的拐点和激活参数假设,他们估出每个 token 大约对应接近 2KB 的存储开销,并认为这可由共享全局上下文的稠密注意力或稀疏注意力实现。
### - 长上下文的内存瓶颈与缓存成本
这一章围绕预填充、解码和 KV 缓存的成本结构展开,讨论为什么解码比预填充贵得多,以及这背后反映出的内存带宽瓶颈。对话进一步比较了缓存命中、重计算和不同内存层级(HBM、DDR、Flash)的取回与持有成本,说明长上下文真正受限的不是纯算力,而是内存带宽和容量。这也解释了为什么上下文长度在近年停留在几十万 token 附近,难以继续大幅扩展。
- 按每个 token 来看,预填充更便宜而解码更贵,说明系统在解码阶段更容易受到内存带宽限制。
- 缓存命中之所以便宜,是因为 KV 缓存已经保存在内存中;缓存未命中则需要从 token 重新计算整个 KV。
- KV 缓存可以存放在 HBM、DDR 或 Flash 中,不同层级在存储成本和取回成本之间存在权衡。
- 超长上下文的主要限制来自内存带宽和内存容量,而不是计算成本;稀疏注意力虽有帮助,但不能无限提升而不损失质量。
### - 内存层级成本与可逆网络
这一章先讨论推理部署中的内存层级选择,围绕 HBM、DDR、闪存和机械硬盘,解释“持有时间”和“取回时间”如何共同决定成本,并尝试从 API 的时长与价格反推底层使用的是哪一层存储。随后话题转向密码学与神经网络的相似性与差异,尤其是两者都依赖信息混合,但优化目标几乎相反。最后重点介绍了从密码学借鉴来的费斯特尔结构和可逆网络,说明它如何在训练中用更多计算换取更低的激活内存占用。
- 选择哪一层内存,本质上是在平衡“把内容存住”的成本和“把内容取回到 HBM”的成本。
- 对 API 中五分钟和一小时这类时长的讨论,可能对应不同存储层级,并可用容量除以带宽得到的“排空时间”来判断。
- 密码协议和神经网络都需要把输入信息充分混合,但前者是把结构变得像随机,后者是从看似随机的数据中提取结构。
- 费斯特尔结构可以把不可逆函数包装成可逆构造,而 RevNets 利用这种可逆性在反向传播时重算激活,从而节省训练内存。
### - 结束致谢
