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