快捷键

PyTorch 2.0 性能仪表板 ¶

作者:Bin Bao 和 Huy Do

PyTorch 2.0 的性能每晚在此仪表板上进行跟踪。性能收集每晚在 12 个 GCP A100 节点上运行。每个节点包含一个 40GB 的 A100 Nvidia GPU 和一个 6 核 2.2GHz 的 Intel Xeon CPU。相应的 CI 工作流程文件可在此处找到。

如何阅读仪表盘?

登录页面显示了所有三个基准测试套件的表格,分别是 TorchBenchHuggingfaceTIMM ,以及一个基准测试套件的默认设置下的图表。例如,当前默认图表显示了 TorchBench 过去 7 天的 AMP 训练性能趋势。页面顶部的下拉列表可以选择查看具有不同选项的表格和图表。除了通过率之外,还报告了 3 个关键性能指标: Geometric mean speedupMean compilation timePeak memory footprint compression ratioGeometric mean speedupPeak memory footprint compression ratio 与 PyTorch eager 性能进行比较,数值越大越好。那些表格上的每个性能数字都可以点击,这将带您到一个视图,显示该特定基准测试套件中所有测试的详细数字。

仪表盘上测量了什么?

所有仪表盘测试都在此函数中定义。确切的测试配置可能会更改,但截至目前,我们使用 AMP 精度在三个基准测试套件中测量推理和训练性能。我们还测量了 TorchInductor 的不同设置,包括 defaultwith_cudagraphs (default + cudagraphs)dynamic (default + dynamic_shapes)

在合并之前,我能否检查我的 PR 是否影响了 TorchInductor 在仪表板上的性能?

可以通过在此处点击 Run workflow 按钮并选择你的 PR 分支来手动触发单个仪表板运行。这将启动一个包含你的 PR 更改的整个仪表板运行。完成后,您可以通过在性能仪表板 UI 中选择相应的分支名称和提交 ID 来检查结果。请注意,这是一个昂贵的 CI 运行。由于资源有限,请明智地使用此功能。

我如何在本地运行任何性能测试?

完整仪表板运行期间使用的确切命令行可以在任何最近的 CI 运行日志中找到。工作流程页面是查找一些最近运行日志的好地方。在这些日志中,您可以搜索类似 python benchmarks/dynamo/huggingface.py --performance --cold-start-latency --inference --amp --backend inductor --disable-cudagraphs --device cuda 的行并在具有与 PyTorch 2.0 一起工作的 GPU 的情况下本地运行它们。 python benchmarks/dynamo/huggingface.py -h 将为您提供基准测试脚本的选项的详细说明。


© 版权所有 PyTorch 贡献者。

使用 Sphinx 构建,主题由 Read the Docs 提供。

文档

查看 PyTorch 的全面开发者文档

查看文档

教程

深入了解初学者和高级开发者的教程

查看教程

资源

查找开发资源并获得您的疑问解答

查看资源