作者:PyTorch 团队

PyTorch 团队激动地宣布,我们关于 PyTorch 2 的论文已被 ACM 国际编程语言与操作系统架构支持大会(ASPLOS)接受并将在会上进行演示。ASPLOS 大会定于2024年4月27日至5月1日在美国加利福尼亚州圣地亚哥举行。

这篇论文深入探讨了 torch.compile 的实现,并重点介绍了其关键驱动技术,包括 TorchDynamo(图捕获)、TorchInductor(后端编译器)和动态形状支持。

在 ASPLOS 大会期间,我们将在4月27日(星期六)举办一场教程,重点讲解 PyTorch 2 的内部工作原理以及系统研究人员如何利用和在其基础上进行构建。随着会议临近,敬请关注更多详细信息——我们期待您的参与!

论文预览附在下方

标题:PyTorch 2: Faster Machine Learning Through Dynamic Python Bytecode Transformation and Graph Compilation. 论文全文 PDF

摘要

本文介绍了对流行的 PyTorch 机器学习框架的两项扩展:TorchDynamo 和 TorchInductor,它们实现了 PyTorch 2 中发布的 torch.compile 功能。TorchDynamo 是一个 Python 级别的即时 (JIT) 编译器,它能够在 PyTorch 程序中进行图编译,同时不牺牲 Python 的灵活性。它通过在执行前动态修改 Python 字节码并将 PyTorch 操作序列提取到 FX 图中来实现此目的,然后使用众多可扩展后端之一对该 FX 图进行 JIT 编译。TorchInductor 是 TorchDynamo 的默认编译器后端,它将 PyTorch 程序转换为适用于 GPU 的 OpenAI Triton 和适用于 CPU 的 C++。结果表明,TorchDynamo 比现有方法能够更鲁棒地捕获图,同时引入的开销极小,并且 TorchInductor 在 NVIDIA A100 GPU 上对 180 多个真实世界模型提供了推理方面 2.27 倍、训练方面 1.41 倍的几何平均加速,优于其他六种编译器。这些扩展为在 PyTorch 等即时执行(eager mode)框架中通过编译器应用优化提供了一种新方法。

作者

Jason Ansel (Meta); Edward Yang (Meta); Horace He (Meta); Natalia Gimelshein (OpenAI); Animesh Jain (Meta); Michael Voznesensky (Meta); Bin Bao (Meta); Peter Bell (Quansight); David Berard (Meta); Evgeni Burovski Quansight; Geeta Chauhan (Meta); Anjali Chourdia (Meta); Will Constable (Meta); Alban Desmaison (Meta); Zachary DeVito (Meta); Elias Ellison (Meta); Will Feng (Meta); Jiong Gong (Intel); Michael Gschwind (Meta); Brian Hirsh (Meta); Sherlock Huang (Meta); Kshiteej Kalambarkar (Quansight); Laurent Kirsch (Meta); Michael Lazos (Meta); Mario Lezcano (Quansight); Yanbo Liang (Meta); Jason Liang (Meta); Yinghai Lu (Meta); CK Luk (Meta); Bert Maher (Meta); Yunjie Pan (密歇根大学); Christian Puhrsch (Meta); Matthias Reso (Meta); Mark Saroufim (Meta); Marcos Yukio Siraichi (Quansight); Helen Suk (Meta); Michael Suo (Meta); Phil Tillet (OpenAI); Eikan Wang (Intel); Xiaodong Wang (Meta); William Wen (Meta); Shunting Zhang (Meta); Xu Zhao (Meta); Keren Zhou (OpenAI & 乔治梅森大学); Richard Zou (Meta); Ajit Mathews (Meta); Gregory Chanan (Meta); Peng Wu (Meta); Soumith Chintala (Meta)

ASPLOS’24 - 全天教程安排

ASPLOS'24 PyTorch 2 教程(4月27日星期六)的完整日程安排可在下方链接查看 此处