[quote="Hzfengsy, post:1, topic:7872"]
#### TensorIR:

```
with tir.block([10]) as vi:
    B[vi] = A0[vi]
with tir.block([10]) as vi:
    B[vi + 10] = A1[vi]
with tir.block([10]) as vi:
    B[vi + 20] = A2[vi]
```

The critical improvement is performance. In TIR we optimize the program by 
deprecating the `if` branch, which is impossible in the TE schedule.
[/quote]

This looks confusing to me because there is no example showing how to schedule 
the three blocks.

I'm curious if TIR's Block construct is strong enough to support holistic 
fusion like [Rammer](https://www.usenix.org/system/files/osdi20-ma.pdf) and 
[HFuse](https://arxiv.org/pdf/2007.01277.pdf), where different Block has 
heterogeneous workload but we can fuse them in a single kernel. If so we can 
make such fusion a primitive in TIR schedule and enlarge the auto-scheduling 
search space.





---
[Visit 
Topic](https://discuss.tvm.apache.org/t/rfc-tensorir-a-schedulable-ir-for-tvm/7872/56)
 to respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.tvm.apache.org/email/unsubscribe/efec97d52d96bebf2d6c5966d951ac12d9a81dfec8fd6988ec19ddee04582b85).

Reply via email to