tqchen edited a comment on pull request #7765:
URL: https://github.com/apache/tvm/pull/7765#issuecomment-810547269


   Thanks @junrushao1994 @comaniac These are great points, although i think 
they are somewhat parallel to the data structure itself and have things to do 
with primitive implementations. 
   
   So we could try to make discussions in parallel with respect to this PR.
   
   In terms of the "root" name, given that we are uniquely identifying function 
already via the global names, an easy way is to just use function name in the 
module to obtain the root, which removes on concept here.
   
   The main Q for the block name uniqueness is about how to enforce them. For 
manual operations they certainly makes sense. For general automated 
transformations it might create an extra burden to introduce name tables or 
allocation mechanism. Since automated transformations rules works on a 
sub-region and may not be aware of the names from other parts. Due to that 
reason, allowing pointer uniqueness might still be a better approach. This also 
aligns with our existing approach to handle loop vars, which saves a lot of 
trouble during automatic transformations.
   
   This being said, we should be able to introduce canonicalization pass to 
uniquely rename block names. We can also add a flag in the Schedule to enforce 
such uniqueness if it is turned on
   
   
   
   


-- 
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.

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


Reply via email to