tvm
tvm copied to clipboard
[Tracking Issue] Padded Layout Transformations
This issue is to track progress for padded layout transformations
-
[x] New TIR Op,
tir::builtin::assume(#12267) -
[x] New lowering transform, remove
tir::builtin::assume(#12267) -
[x] New TIR Op,
tir::builtin::undef(#12266) -
[x] New lowering transform, remove
tir::builtin::undef(#12266) -
[ ] Enhancements to
transform_layout- [ ]
tir.schedule.transform_layout, rewrite loop structure if possible, mimicking TE functionality. - [ ] Insert pad value into generated TIR, using
tir::if_then_else,builtin::assume, andbuiltin::undef
- [ ]
-
[ ] New utility, reorder loops according to buffer layout
Should be implemented as wrapper function around
Schedule.transform_block_layout. -
[ ] Enhancement, DomainTouched
Must track a predicate for which this touch occurs, and any known values for this touch.
-
[ ] Enhancement, Remove No Op
Should identify writes that are later overwritten or deallocated without affecting the observable outputs.
-
[ ] Enhancement, Simplify
Should remove conditional statements that are provable using known contents of a buffer.
-
[x] New transform, Hoist Expression. (#11592)
-
[ ] New primitive, remove branching through overcompute
-
[ ] New primitive, remove overcompute through branching