Hi,
Even though I don’t think I understood everything, I like the idea of solving some of the limitations of te.compute
. Since the te.compute
is in a central part of the TVM stack changing it requires a lot of work and understanding. So thank you all for continuing such development.
Q1: I was wondering how this fits in the Relay ->Topi->TE->TIR flow. In a more specific case take FuseOps. AFAIK the FuseOps pass creates the multi-stage operator based on the te.compute
s. Since you mentioned that there would be no notion of a stage
in the new TensorIR, how would FuseOps work? and more generally how TVM’s philosophy of “defining a compute rule and a separate schedule” be changed?
Q2: What exactly do you mean by “not all program can be scheduled”? maybe an example?
Q3: You mentioned “new scheduling primitives”, could you maybe give a list?
EDIT: Q4: Expected timeline of the steps?