I am trying to understand more about the auto-scheduler, and the output from 
the Ansor tuning process.

If I examine the output JSON from tuning, I see a series of transformation that 
have been learned as an autoschedule, e.g.:

```
["SP", 2, 24, 3, [3], 1],
["RE", 2, [0, 4, 8, 12, 16, 1, 5, 9, 13, 17, 20, 22, 24, 2, 6, 10, 14, 18, 21, 
23, 25, 3, 7, 11, 15, 19]],
["FSP", 3, 0, 1, 2],
```

I am trying to understand what each of these transformations do, and what their 
relatied parameters are.

I can't find them explicitly mentioned in the [Ansor 
paper](https://www.usenix.org/conference/osdi20/presentation/zheng), though 
they are enumerated in 
[include/tvm/auto_scheduler/transform_step.h](https://github.com/apache/tvm/blob/main/include/tvm/auto_scheduler/transform_step.h).

I have compiled what I think is a complete list.
- AN: AnnotationStep
- FU: FuseStep
- PR: PragmaStep
- RE: ReorderStep
- SP: SplitStep
- FSP: FollowSplitStep
- FFSP: FollowFusedSplitStep
- SA: StorageAlignStep
- CA: ComputeAtStep
- CI: ComputeInlineStep
- CR: ComputeRootStep
- CHR: CacheReadStep
- CHW: CacheWriteStep
- RF: RfactorStep

However, there does not seem to be clear high-level documentation on their 
purpose, parameters, or examples of their advantages.

Are there resources available that could help me understand, or could some of 
the developers comment?  Has it been discussed in the various PRs?

I am interested enough to make an effort of improving the documentation myself, 
but I would rather have a starting point beyond looking at the code.





---
[Visit 
Topic](https://discuss.tvm.apache.org/t/explanation-of-autoscheduler-transform-steps/9512/1)
 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/a2c303b2e3ebeddab71551276ababfdeb61914f106de1f4e24520adef338c751).

Reply via email to