Stencil tensorize z dimension
stencil_tensorize_z_dimension
¶
StencilTypeConversion
dataclass
¶
Bases: TypeConversionPattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
AccessOpTensorize
dataclass
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
__init__() -> None
¶
match_and_rewrite(op: AccessOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
ArithOpTensorize
¶
Bases: RewritePattern
Tensorises arith binary ops.
If both operands are tensor types, rebuilds the op with matching result type.
If one operand is scalar and an arith.constant, create a tensor constant directly.
If one operand is scalar and not an arith.constant, create an empty tensor and fill it with the scalar value.
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: FloatingPointLikeBinaryOperation, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
ApplyOpTensorize
dataclass
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
__init__() -> None
¶
match_and_rewrite(op: ApplyOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
FuncOpTensorize
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: FuncOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
LoadOpTensorize
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: LoadOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
DmpSwapOpTensorize
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: dmp.SwapOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
StoreOpTensorize
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: StoreOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
AccessOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: AccessOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
CslStencilAccessOpUpdateShape
¶
Bases: RewritePattern
Updates the result type of a tensorized csl_stencil.access op
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: csl_stencil.AccessOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
ExtractSliceOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: ExtractSliceOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
ArithOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: FloatingPointLikeBinaryOperation, rewriter: PatternRewriter)
¶
VarithOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: varith.VarithOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
EmptyOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: EmptyOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
FillOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: FillOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
ConstOpUpdateShape
¶
Bases: RewritePattern
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
match_and_rewrite(op: ConstantOp, rewriter: PatternRewriter)
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
BackpropagateStencilShapes
dataclass
¶
Bases: ModulePass
Greedily back-propagates the result types of tensorized ops. Use after creating/modifying tensorization.
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
name = 'backpropagate-stencil-shapes'
class-attribute
instance-attribute
¶
__init__() -> None
¶
apply(ctx: Context, op: builtin.ModuleOp) -> None
¶
Source code in xdsl/transforms/experimental/stencil_tensorize_z_dimension.py
StencilTensorizeZDimension
dataclass
¶
Bases: ModulePass