manupa-arm commented on pull request #5409:
URL: https://github.com/apache/incubator-tvm/pull/5409#issuecomment-620500976


   I guess annotating backend-independent nodes (such as ConstantNodes, 
TupleGetItem, Tuple, etc) are not trivial and they are special cased. Some 
(e.g., TupleGetItem node) should look at parents while others (ConstantNode) 
should look at children. Looking at children, is quite tricky with current 
infrastructure (correct me, If I am wrong).
   
   Therefore, IMHO I would prefer the current A1) : 
   
   input
     |
   begin
     |
    op -- begin -- const
     |
    end
   
   OR the proposed A2) :
   
   input
     |
   begin
     |
    op -- const
     |
    end
   
   I fail to see the value addition of annotating constant nodes as they should 
strictly belong to the region as the op and should not be considered to be 
merged with other regions. In that light A2 seems appropriate. 
   
   However, the current status A1 (though it has an unnecessary boundary) 
should work in principle as we bind constants (@zhiics ) if they are a input to 
a region. But I guess, it might fail to recognize constant tuples. We could fix 
that as an alternative solution. 
   
   Additionally, @comaniac 's proposal makes it compulsory to run 
MergeCompilerRegions to avoid creating primitive functions with just a constant 
node in it. Since we do not have control over the output region size of 
MergeCompilerRegions (yet), we might not want to annotate constants (yet).
   


----------------------------------------------------------------
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:
us...@infra.apache.org


Reply via email to