PassManager

class onnx_ir.passes.PassManager(passes, steps=1, early_stop=True)

Pass manager for the IR.

The PassManager is a Pass that runs a sequence of passes on a model.

Example::

import onnx_ir as ir import onnx_ir.passes.common as common_passes

model = ir.load(“model.onnx”) passes = ir.passes.PassManager(

[

# Pass managers can be nested ir.passes.PassManager(

[

common_passes.DeduplicateHashedInitializersPass(size_limit=1024 * 1024), common_passes.CommonSubexpressionEliminationPass(),

], steps=2, early_stop=True,

), common_passes.ClearMetadataAndDocStringPass(),

], steps=2, early_stop=False,

)

# Apply the passes to the model result = passes(model)

Parameters:
passes

The passes to run.

steps

The number of times to run the passes.

early_stop

Whether to stop running the passes if the graph stops changing.

call(model)[source]

Run the set of passes steps number of times or until the graph stops changing.

Parameters:

model (Model)

Return type:

PassResult