pytorch 源码阅读(2)——torch._dynamo.optimize

0 torch._dynamo.optimize(backend, *, nopython, guard_export_fn, guard_fail_fn, disable, dynamic),TorchDynamo 的主入口点

1 参数说明

  • backend,一般有两种情况:
    • 一个包含 torch.fx.GraphModule 和 example_inputs,返回一个能够更快执行 graph 的函数或者可调用的对象。也可以通过设置backend_ctx_ctor 属性,来给后端提供额外的上下文。具体用法可以查看AOTAutogradMemoryEfficientFusionWithContext
    • 或者是一个torch._dynamo.list_backends()里面的字符串后端名称。
  • nopython: 如果时 True,graph breaks 将会报错,并且只有一个完整的 graph
  • disable:如果为 True,设置当前装饰器为 no-op
  • dynamic:(bool or None): 使用动态 shape 进行 tracing
    • True:尝试生成尽可能动态的 kernel,但这个也不总是有效的,因为某些特化优化会使动态 kernel 失效
    • False:将不生成任何动态的 kernel,只进行特化优化
    • None:默认值,会自动检测是否发生了动态变化,并在重新编译时编译一个更动态的动态内核。

2 额外说明

这个函数时 TorchDynamo 的主入口点。 进行 graph 提取并调用 backend() 来优化提取到的 graph。

相关推荐
天翼云开发者社区9 分钟前
总决赛定档!“天翼云息壤杯”高校AI大赛巅峰之战即将打响!
人工智能·ai大赛
亚马逊云开发者19 分钟前
Amazon Bedrock 助力 SolveX.AI 构建智能解题 Agent,打造头部教育科技应用
人工智能
搏博26 分钟前
将图形可视化工具的 Python 脚本打包为 Windows 应用程序
开发语言·windows·python·matplotlib·数据可视化
硅基茶水间40 分钟前
「轻量级AI编程桌面软件」代码上下文一键搞定|已开源
python
新德通科技44 分钟前
新德通科技:以创新驱动光通信一体化发展,赋能全球智能互联
人工智能
__星辰大海__44 分钟前
NeRF PyTorch 源码解读 - NDC空间
人工智能
Java学术趴44 分钟前
RNN指南:从梯度消失到LSTM魔改,一文说透RNN/LSTM/GRU的隐藏优势!
人工智能
coderCatIce1 小时前
刘二大人第2讲-线性模型-带代码以及作业答案
人工智能·机器学习
帅夫帅夫1 小时前
Vibe Coding从零开始教你打造一个WebLLM页面
前端·人工智能
抽风的雨6101 小时前
【python深度学习】Day 45 Tensorboard使用介绍
人工智能·深度学习