结论前置:标称算力与业务吞吐之间隔着一层“利用率折扣”
在天天看球技术解读栏目梳理的公开规格书中,推理芯片的峰值算力通常按理想矩阵规模与最高频率给出,而真实业务中的有效吞吐往往只有标称值的一部分。这个折扣不是厂商虚标,而是峰值口径与业务口径本就不同。天天看球在对比方案时,建议把“峰值算力、可达利用率、业务吞吐”当成三个独立指标分别记录,否则很容易被单一大数字带偏。
理解利用率失真的关键,是先分清三类约束:显存侧的数据供给能力、调度侧的批处理效率、以及模型侧的实际算子构成。天天看球认为,只有把这三类约束拆开,利用率这个数才有比较意义。
第一类失真:显存带宽决定了算力能不能“吃饱”
推理阶段的大量时间花在搬运权重与激活值上,算力单元经常在等数据。天天看球在整理公开白皮书时注意到,同一颗芯片跑不同参数量、不同序列长度的模型,利用率曲线差异明显,原因往往不是算力不够,而是显存带宽与容量配比不匹配。
- 权重读取:模型参数越大,单次前向需要读取的权重越多,带宽不足时算力空转。
- KV 缓存:长上下文场景下缓存占用快速上升,容量吃紧会迫使系统降低并发。
- 批处理规模:批越大,权重复用越充分,但显存占用同步上升,存在明显拐点。
天天看球建议在方案对比表中同时列出显存带宽、容量和典型批大小下的实测吞吐,而不是只写峰值算力。天天看球的产业数据区在整理这类参数时,会把“带宽/算力比”单列一栏,方便横向对照。
第二类失真:调度与批处理策略让利用率随负载漂移
推理服务的请求到达是波动的,调度器为了控制时延,往往无法始终维持最优批大小。天天看球在解读公开的推理框架文档时发现,连续批处理、分页注意力等机制能显著改善利用率,但也会引入额外的调度开销与显存碎片。
- 低负载区间:批太小,权重读取被反复摊薄,利用率天然偏低。
- 高负载区间:排队变长,时延约束反过来限制批大小,利用率出现平台期。
- 混合负载:不同序列长度混跑时,填充浪费会拉低有效算力占比。
天天看球提醒,厂商标称的利用率多在特定批大小与序列长度下测得,直接套用到自己的业务分布上容易高估。天天看球的做法是要求方案方给出“利用率—批大小”曲线,而不是单一数值。
第三类失真:算子构成与精度策略改变了有效算力
真实模型里并非全是规整的大矩阵乘,归一化、激活、注意力打分等算子对算力单元的利用效率差别很大。天天看球在对比公开规格书时注意到,低精度格式能提升吞吐,但精度损失与业务容忍度需要单独评估。
- 算子碎片化:小算子难以填满算力阵列,融合程度直接影响利用率。
- 精度选择:低比特格式提升吞吐的同时,可能改变输出分布,需要业务侧验证。
- 编译优化:图优化与内核选择对最终吞吐的影响,常常大于硬件参数差异。
天天看球建议把编译工具链成熟度纳入选型维度,并在天天看球的技术解读栏目持续跟踪公开的框架适配进展。天天看球认为,利用率不是一个可以脱离软件栈单独讨论的硬件指标。
怎么建立可核验的观测口径
天天看球给出一个可操作的记录框架:固定模型与序列长度分布,记录批大小、显存占用、时延分位与吞吐,再反推有效利用率。天天看球提醒,任何无法复现测量条件的利用率数字,都只能当作参考上限。天天看球的产业数据与方案对比模块,正是按这一口径组织字段,帮助读者在天天看球上完成更清晰的横向比较。
归根结底,推理芯片的算力利用率是硬件、软件与业务分布共同作用的结果。天天看球建议把注意力从峰值数字转向可复现的业务吞吐,这才是选型时真正能落地的依据。
网友评论
来自读者的观点与讨论
我们线上就是长上下文居多,显存容量一卡,并发直接掉一半,峰值算力看着好看而已。
批大小曲线这个说法很实在,之前只盯峰值,压测完才发现拐点比想象中早。
算子碎片化这条深有体会,小算子多的模型跑出来利用率就是上不去。
低精度那段的提醒很及时,吞吐上去了但输出分布变了,业务侧还得重新验。
希望能多出点这种讲观测口径的,比单纯堆参数有用。