Lunderberg commented on pull request #39:
URL: https://github.com/apache/tvm-rfcs/pull/39#issuecomment-938057599


   Following a video chat with @csullivan, documenting some of the key points 
of the conversation.
   
   * Setting the physical layout in a TE-based schedule has two roles.  One is 
the rewrite the buffer itself, and the other is to define the order of 
iteration when writing to the buffer.  In the latter use case, the schedule 
should have access to the physical axes for use in the schedule.
   * Setting the physical layout is roughly equivalent to using an inlined 
`te.compute` to define a re-shaped tensor.  However, using `te.compute` 
requires the compute definition to change, whereas `set_physical_layout` is 
entirely contained in the schedule.
   * For a given tensor, either the physical axes or the logical axes may be 
used in scheduling, not both.  We were unable to think of use-cases where you 
would want to change the physical layout, but still maintain the loop-order of 
the logical layout.  One idea that came of this conversation was to have 
`set_physical_layout` act similar to `cache_read` and `cache_write`, which 
introduce a new stage.
   * If a physical layout is defined for a cache stage, then the generated code 
should perform the layout transformation as part of generating that cache.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to