mbs-octoml opened a new pull request, #11432:
URL: https://github.com/apache/tvm/pull/11432

   …ternal codegen paths
   
   (See 
https://discuss.tvm.apache.org/t/byoc-supporting-cutlass-byoc-with-collage/12796/6
 for
   context, which in turn is part of Collage 
(https://github.com/apache/tvm-rfcs/blob/main/rfcs/0062-collage.md).
   
   We want both old-style (via relay.ext.$toolchain) and new-style (via 
"RelayToTIR" Pass
   attribute on target kind) external codegen to be able to access the current 
'external codegen'
   Target instance via Target.current().
   
    - For old-style, plumb the true Target through TEComplier and push it on 
the context
      stack before calling relay.ext.$toolchain.
   
    - For new-style, pass the CompilationConfig to the RelayToTIRTargetHook 
pass, make the jump from
      "Compiler" attribute value to Target via the new 
CompilationConfig::FindPrimitiveTargetForKind
      method, and push on the stack before invoking the custom "RelayToTIR" 
pass.
   
   While working on this discovered RelayToTIRTargetHook was incompatible with 
the VM's compilation
   flow since RelayToTIRTargetHook assumes all "Compiler" attributed functions 
are inlined. Generalize
   it to support both inline and global function styles.
   
   Extend Target::IsExternalCodegen to recognize target kinds with "RelayToTIR" 
attributes as
   external.
   
   Update target hooks unit test to exercise new support for outline-style, 
picking up the current target,
   and compiling via the VM.
   
   


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