torch.fx.experimental¶
警告
这些API是实验性的,可能会在未通知的情况下发生变化。
torch.fx.experimental.symbolic_shapes¶
控制维度的符号分配方式。 |
|
对于客户:在此维度的大小必须在 'vr' 范围内(指定一个下限和上限,包含上下限)并且必须是非负数,且不应为 0 或 1(但请参见下面的注意事项)。 |
|
对于客户端:没有明确的约束;约束是由守护者从追踪中隐式推断出的。 |
|
表示和决定各种各样的输入源之间的等式约束。 |
|
数据结构指定我们应如何在 |
|
通过 |
|
通过缓存的Source:Symbol,以符号上下文确定的方式在 |
|
给定可追溯张量子类中内部张量的正确符号上下文可能与外部符号上下文不同。 |
|
针对符号维度约束系统的自定义求解器。 |
|
封装所有可能影响 FakeTensor 分派的形状环境设置。 |
|
检索整数的提示(基于运行时观察到的底层实际值)。 |
|
检查 SymInt 中底层对象是否为具体值的工具。 |
|
检查 SymBool 中底层对象是否为具体值的工具。 |
|
检查 SymInt 中底层对象是否为具体值的工具。 |
|
布尔符号(val)的更快版本 |
|
布尔值版本的快速实现 free_unbacked_symbols(val) |
|
仅在我们可以确定 a 为真时返回 True,过程中可能引入一个保护条件。 |
|
仅在我们可以确定 a 为假时返回 True,过程中可能引入一个保护条件。 |
|
以与大小无关的方式对符号布尔表达式进行保护。 |
|
类似于 ==,但当在列表/元组上运行时,它会递归地测试相等性,并使用 sym_and 连接结果,而不进行保护。 |
|
应用一个约束,要求传入的 SymInt 必须位于 min 和 max 之间(包括 min 和 max),并且不对 SymInt 引入保护机制(这意味着它可以用于未支持的 SymInt)。 |
|
给定两个 SymInt,将其约束为必须相等。 |
|
通过将其转换为小于或等于不等式并将所有非常数项移到右侧来规范化一个布尔表达式。 |
|
如果 x 可以简化为一个常量且为真,则返回 True。 |
|
测试两个“元”值(通常是张量或对称整数)具有相同的值,例如,在重新跟踪之后。 |
|
在运行假张量传播并产生 example_value 结果后,遍历 example_value 查找新绑定的未支持符号,并记录它们的路径以备后用。 |
|
假设我们要重新构建一个之前存在假张量传播(因此为未支持的SymInt)的预定义计算图。 |
|
torch.fx.experimental.proxy_tensor¶
给定一个函数 f,返回一个新的函数,当其使用 f 的有效参数执行时,返回一个表示在执行过程中所进行的操作集的 FX GraphModule。 |
|
调用当前活动的代理跟踪模式,在处理这些参数的函数上执行 SymInt/SymFloat/SymBool 分派跟踪。 |
|
当前的代理追踪模式,或者如果我们当前没有进行追踪,则为 None。 |
|
在这个上下文管理器中,如果你正在进行 make_fx 追踪,我们将对所有 SymNode 计算进行 thunkify 处理,并在实际上不需要时避免将其追踪到图中。 |
|
在上下文中,禁用块化。 |