torch.compile
PyTorch 2.0引入的核心编译特性,基于TorchDynamo字节码捕获和TorchInductor代码生成后端,通过装饰器即可触发模型计算图的即时捕获与硬件优化代码生成,兼顾动态图灵活性与静态图执行效率
核心事实
时间轴 (近 90 天)
torch.compile通过图捕获和内核融合优化模型的前向与反向传播。
在支持Tensor Core的GPU上,torch.compile和SDPA结合通常能带来1.5–2倍的速度提升,且不改变数学等价性。
PyTorch 2.x引入了torch.compile,它在几乎不改动用户代码的前提下完成图捕获与算子融合。
TorchTPU通过torch.compile和XLA完成图编译优化,允许开发者在需要性能时切换到编译模式。
Inductor是PyTorch 2.x中torch.compile的默认编译后端,负责把FX图切分为内核、生成Triton或C++代码,并为不同加速器提供可插拔的后端接口。
REKI 在单块 H100 上以 torch.compile 编译、BF16 精度、两路 256x256 RGB 输入,产出完整动作块仅需 21.8 毫秒,比 π0.5(33.8 ms)快 35.5%。
TorchNeuron 作为原生后端,注册为 torch.compile 的可选 backend,使同一份模型代码无需修改即可下沉到 Trainium 执行。
Windows安装器通过计划任务在启动、登录、VS更新后及每日重新指向新的Visual Studio编译器版本,以确保PATH中的路径持续有效,维持torch.compile等依赖编译的功能可用。
安装器的AI应用矩阵(ComfyUI、SwarmUI、Musubi Trainer、Ultimate TTS等)依赖torch.compile、Triton、flash-attention、sage-attention、xformers和insightface等对编译环境敏感的组件。
IBM Spyre AI 加速器将其 torch.compile 后端从自研的 sendnn 编译栈切换为开源社区维护的 Inductor。
还有 29 条时间轴事件
全部知识事实 (20)
TorchDynamo是PyTorch 2.0编译栈的入口层,通过Python字节码拦截将动态图代码转换为可优化的中间表示
75%已验证混合精度训练通常可将训练速度提升1.5-2倍并减少近一半的显存占用
75%已验证torch.compile是PyTorch 2.0引入的核心编译特性,基于TorchDynamo(字节码捕获)和TorchInductor(代码生成后端)构建
65%已验证PyTorch 2.0引入的torch.compile功能通过图捕获和编译优化,在保持动态图易用性的同时提升了推理和训练速度
65%已验证torch.compile 在主流模型上平均带来 30%~2 倍的训练加速,仅需一行装饰器调用即可启用
65%待验证在支持Tensor Core的GPU上,torch.compile和SDPA结合通常能带来1.5–2倍的速度提升,且不改变数学等价性。
50%待验证torch.compile通过图捕获和内核融合优化模型的前向与反向传播。
50%待验证PyTorch 2.x引入了torch.compile,它在几乎不改动用户代码的前提下完成图捕获与算子融合。
50%待验证TorchTPU通过torch.compile和XLA完成图编译优化,允许开发者在需要性能时切换到编译模式。
50%待验证Inductor是PyTorch 2.x中torch.compile的默认编译后端,负责把FX图切分为内核、生成Triton或C++代码,并为不同加速器提供可插拔的后端接口。
50%待验证REKI 在单块 H100 上以 torch.compile 编译、BF16 精度、两路 256x256 RGB 输入,产出完整动作块仅需 21.8 毫秒,比 π0.5(33.8 ms)快 35.5%。
50%待验证TorchNeuron 作为原生后端,注册为 torch.compile 的可选 backend,使同一份模型代码无需修改即可下沉到 Trainium 执行。
50%待验证安装器的AI应用矩阵(ComfyUI、SwarmUI、Musubi Trainer、Ultimate TTS等)依赖torch.compile、Triton、flash-attention、sage-attention、xformers和insightface等对编译环境敏感的组件。
50%待验证Windows安装器通过计划任务在启动、登录、VS更新后及每日重新指向新的Visual Studio编译器版本,以确保PATH中的路径持续有效,维持torch.compile等依赖编译的功能可用。
50%待验证IBM Spyre AI 加速器将其 torch.compile 后端从自研的 sendnn 编译栈切换为开源社区维护的 Inductor。
50%待验证torch.compile 是 PyTorch 2.0 引入的即时编译(JIT)机制,工作流程分三步:TorchDynamo 在字节码层面抓取计算图,AOTAutograd 处理前向与反向图结构,最后交由后端编译器生成可执行代码。
50%待验证TorchInductor是PyTorch默认后端编译器,能将计算图降低为Triton GPU内核或C++/OpenMP CPU代码
50%待验证PyTorch 2.0的torch.compile后端大量采用Triton生成的Kernel
50%待验证TorchScript 和 torch.compile 用于模型编译与加速
50%待验证在 fullgraph 模式下,依赖 Python 动态控制流或调用未做 FakeTensor 注册的外部 C++ 扩展的操作会导致 graph break,使编译失败
50%