The output JSON file stores serialized measurement records, so we can extract 
the best schedules and re-apply them again during compilation. One measurement 
record also contains a complete schedule, which consists of the transform steps 
you mentioned.
This json format is designed to be compact (to save disk space) and readable 
(to make debugging easier).

Your compiled list is correct. Actually, this list is defined here 
(https://github.com/apache/tvm/blob/cfe2e288a331b10e72e10c7e465df375b44e6ae9/src/auto_scheduler/transform_step.cc#L177-L215),
 
The JSON serialization format of a step is an array `(name, args...)`. When 
deserializing the json, we parse the name and then dispatch according to the 
name.  
Take "SP" (SplitStep) as an example, we parse the name and go to this 
[branch](https://github.com/apache/tvm/blob/cfe2e288a331b10e72e10c7e465df375b44e6ae9/src/auto_scheduler/transform_step.cc#L191-L192).
 It then goes to this [reader 
function](https://github.com/apache/tvm/blob/cfe2e288a331b10e72e10c7e465df375b44e6ae9/src/auto_scheduler/transform_step.cc#L990-L1013).
>From the code, we can infer the format is `("SP", stage_id, iter_id, 
>loop_extent, lengths, inner_to_outer)`.
Correspondingly, this [writer 
function](https://github.com/apache/tvm/blob/cfe2e288a331b10e72e10c7e465df375b44e6ae9/src/auto_scheduler/transform_step.cc#L1015-L1023)
 defines how to serialize a SplitStep to JSON. You can find it defines the 
format more clearly.
Similarly, every step has its own reader function and writer function.

If you want to improve the doc, you are welcome to contribute a doc describing 
the format and how it is generated. See also this related discussion: 
https://discuss.tvm.apache.org/t/interpretation-of-measurement-records-when-auto-scheduling/9358





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

Reply via email to