.xoptim.patterns_investigation

class experimental_experiment.xoptim.patterns_investigation.SimplifyingEasyPatternFunction(verbose: int = 0, priority: int = 0, min_opset: int = 1)[source]

Base class to build investigation patterns. See FunctionPowTanhPattern to see how to use it.

post_apply_pattern(g, *nodes)[source]

Method to overload to apply as step after the pattern was applied.

experimental_experiment.xoptim.patterns_investigation.get_investigation_patterns(verbose: int = 0) List[PatternOptimization][source]

Returns a default list of patterns for investigations. They do nothing but prints information if verbose > 0.

<<<

from experimental_experiment.xoptim.patterns_api import pattern_table_doc
from experimental_experiment.xoptim.patterns_investigation import (
    get_investigation_patterns,
)

print(pattern_table_doc(get_investigation_patterns(), as_rst=True))

>>>

name

short_name

priority

doc

0

BinaryInvestigation

BinaryInvestigation

1

Looks into

1

FunctionPackedMatMulPattern

FunctionPackedMatMul

1

Replaces multiple MatMul (X,A), (X,B) by (X, concat(A,B))…

2

FunctionPowTanhPattern

FunctionPowTanh

0

Moves the nodes in match_pattern into a local function. .. runpython

3

FunctionSplitRotaryMulPattern

FunctionSplitRotaryMul

0

Moves the nodes in match_pattern into a local function. .. runpython