PassBase

class onnx_ir.passes.PassBase

所有 pass 的基类。

in_placechanges_input 属性及其含义

changes_inputs

not changes_inputs

in_place

就地操作

仅有副作用的 pass

not in_place

破坏性的

函数式的

abstract call(model)[source]

pass 的主要入口点。

参数:

model (Model)

返回类型:

PassResult

abstract property changes_input: bool

pass 是否修改输入模型。

property destructive: bool

in_place=False 时,pass 是否会破坏输入模型。

如果 pass 不是就地操作,并且修改了输入模型,则它是破坏性的。

ensures(model)[source]

pass 的后置条件。

此实现是可选的,如果由 pass 管理器运行,将在 call() 后调用。

参数:

model (Model)

返回类型:

abstract property in_place: bool

pass 是否就地修改模型并返回它。

如果为 True,pass 将返回传入的相同模型对象。如果为 False,pass 将返回一个新的模型对象。

requires(model)[source]

pass 的前置条件。

此实现是可选的,如果由 pass 管理器运行,将在 call() 前调用。

参数:

model (Model)

返回类型: