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。

相关推荐
Baihai IDP几秒前
Llama-2 vs. Llama-3:利用微型基准测试(井字游戏)评估大模型
人工智能·ai·llm·llama·白海科技·大模型评估
汀、人工智能2 分钟前
AI Agent框架(LLM Agent):LLM驱动的智能体如何引领行业变革,应用探索与未来展望
人工智能·大模型·agent
记录&日常4 分钟前
【已解决】Anaconda中conda 某个包之后Solving environment: \一直转 卡住不动解决办法(图文教程)
人工智能
2401_857026235 分钟前
【Conda与Pip的完美融合】在Conda环境中优雅使用pip指南
python·conda·pip
CodeArtisanX16 分钟前
高效管理 TensorFlow 2 GPU 显存的实用指南
人工智能·python·tensorflow
__Watson__21 分钟前
【django项目使用easycython编译】Cannot convert Unicode string to ‘str‘ implicitly.
python·django
谢欣燕23 分钟前
基于轨迹信息的图像近距离可行驶区域方案验证
python·opencv·计算机视觉
45度看我24 分钟前
数据库-python SQLite3
数据库·python
X在敲AI代码27 分钟前
零基础入门 Ai 数据挖掘竞赛-速通 Baseline-1
人工智能·数据挖掘
编程刘明33 分钟前
学会拥抱Python六剑客,提高编程效率
开发语言·数据库·python·程序人生·职场和发展·学习方法