认识 PyTorch:张量、自动微分与模型的关系
评估 PyTorch 性能:区分启动、计算和有效吞吐
让硬件条件、结果质量与计时边界出现在同一份记录中。
评估 PyTorch 性能:区分启动、计算和有效吞吐知识学习CN编辑简报更新 2026-09-23
你将学会
- 固定比较的工作量
- 等待被测工作完成
- 把成本对应到有效结果
开始前需要
- 基本 Python 与微积分知识
- 供后续练习使用的独立环境
把数学预期与实际输出分开记录,用可解释的失败帮助学习。
先看结论
- 训练与推理的工作量不同。
- 计时需要覆盖实际完成。
- 速度应与合格结果一起看。
固定比较的工作量
计时前固定模型、形状、数据类型、设备和输出容差。说明测的是推理、训练还是单独求梯度,这些任务保存的状态和执行的工作并不相同。
把模型加载和预热与稳定运行分开。第一次执行可能包含后续调用没有的工作,只有一个总耗时数字时,读者无法判断它代表哪种运行阶段。
等待被测工作完成
加速器操作可能异步执行,因此主机计时器需要把真正完成的时间纳入边界。应使用实际安装后端文档规定的计时方法,而非只测提交任务的耗时。
同时记录内存占用和批量大小。更大的批量可能提高总吞吐,却让单个用户等待更久,或者超过服务原本允许的资源预算。
把成本对应到有效结果
记录失败次数、输出容差与硬件配置。降低精度后速度变快,如果任务质量不合格,就不能把它当成等价工作量下的收益。
本系列没有执行 CPU、GPU 或费用基准测试,因此表格没有填入加速倍数。对梯度累加入口的阅读,也无法支持任何模型性能排名。
如何选择
| 比较维度 | 方案 A | 方案 B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
实施步骤
- 1
固定工作量和正确性标准。
- 2
分开记录启动与完成计算的时间。
- 3
同时报告内存、失败和质量。
可复制示例
csv
trial,torch_build,device,dtype,shape,batch,latency,memory,quality_pass
example,,,,,,,,常见问题
小张量能预测整个模型的速度吗?
不能,形状、数据移动和算子组合都可能不同。
这里有测得的加速比吗?
没有执行性能基准测试。
资料来源
- PyTorch / README.md来源核查 2026-09-23
- PyTorch / torch/autograd/__init__.py来源核查 2026-09-23