Overview
It is an operator decomposition pass and inherits from FusionBasePass. The execution engine calls the meet_requirements() and replacement() methods for the matched nodes, rather than the run() method.
Restrictions
- Do not override run(); if a subclass defines run(), a TypeError will be raised at class definition time.
- The replacement() method must be implemented. meet_requirements() is optional, and it returns True by default.
- Subclasses can define the class attribute op_types: Optional[List[str]] to specify the list of operator types to be decomposed. This attribute is automatically set when the register_decompose_pass decorator is used.
Parent topic: DecomposePass