A strategy is a combination of compute + schedule which can be used to 
implement an operation efficiently. For example, for conv2d we register both a 
regular conv2d compute + schedule and a winograd conv2d compute + schedule as 
appropriate. 

When autotuning, the list of strategies for an operation will then define our 
search space (e.g. we will search both winograd and regular conv2d 
implementations for conv2d).

I think the remaining confusion might be about the difference between compute 
and schedule. I am not an expert on this but they are similar to Halide compute 
and schedules. Take what I say as a grain of salt. The compute is a more 
declarative math expression which naively can be lowered into a set of for 
loops. The schedule is then a transformation of this naive set of for loops to 
add things like tiling, transposing axes, etc. It's enumerations are what 
actually define the search space for autotuning. However this schedule of 
course will only make sense for the compute it was designed for.





---
[Visit 
Topic](https://discuss.tvm.apache.org/t/hi-does-anyone-know-the-difference-between-reg-register-strategy-and-reg-register-compute/11452/4)
 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/5f5053a02e7f5844fdf9f623e978765321388183f9d12070ac7eb5caee7dd68d).

Reply via email to