DimDynamic¶
- class torch.fx.experimental.symbolic_shapes.DimDynamic(value)[源文件][源文件]¶
控制如何对维度执行符号分配。将其默认为 DYNAMIC 始终是可靠的,但 DUCK 和 STATIC 策略可以带来更好的跟踪时和编译时性能,因为它们减少了分配的符号数量,并通常使你的图更具静态性。
注意:如果我们发现你已对维度应用了约束,为简单起见,我们会强制将其设置为 DYNAMIC。
DimDynamic 由多种更高级别的用户体验特性控制。目前
- 在 eager 模式下,默认策略是 DUCK。
通过 assume_static_by_default 将默认值更改为 STATIC。
如果你使用 mark_dynamic_dim 标记,则单个维度会被标记为 DYNAMIC。
- 在 export 模式下,默认策略是 STATIC。
如果你在传递给 export 的 dynamic_shapes 中指定,则单个维度会被标记为 DYNAMIC。