# \[RFC\] 'Cascade' Scheduling

**URL:** <https://discuss.tvm.apache.org/t/rfc-cascade-scheduling/8119>\
**Category:** RFC\
**Created:** [October 8, 2020, 2:16pm UTC](https://discuss.tvm.apache.org/t/rfc-cascade-scheduling/8119 "2020-10-08T14:16:26Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![mbaret](https://discuss.tvm.apache.org/user_avatar/discuss.tvm.apache.org/mbaret/32/1906_2.png) [@mbaret](https://discuss.tvm.apache.org/u/mbaret)\
**Post date:** [October 12, 2020, 3:23pm UTC](https://discuss.tvm.apache.org/t/rfc-cascade-scheduling/8119/9 "2020-10-12T15:23:48Z")

</div>

I should emphasize that while I’ve used 2 convolutions to illustrate a situation in which this technique is useful, it actually generalizes to any operators which have some degree of locality to them (eg. max pool). In that sense, we’re not interested in matching particular well-defined patterns but instead need full vision of the dataflow region of the graph.

My intention is to utilize the BYOC passes (particularly MergeCompilerRegions) to create these large TE graphs for an initially custom target. We can then start having a custom lowering flow that uses the cascading technique as a proof-of-concept even though it will not integrate well with TOPI/AutoTVM. My hope with TensorIR would be that later we may be able to target Ansor at TIR ‘blocks’.

---

_[View the full topic](https://discuss.tvm.apache.org/t/rfc-cascade-scheduling/8119)._
