areusch opened a new pull request, #12880:
URL: https://github.com/apache/tvm/pull/12880

    * Fixes cases where a USMP buffer is used with tensorization intrinsics. In 
these cases, the buffer data var is referenced directly in the call_extern args.
   
   Before this patch, ConvertPoolAllocationsToOffsets would generate TIR like 
the following:
   
     let dense_let: Pointer(global int32) = 
@tir.address_of(global_workspace_37_buffer_var[69952], dtype=handle)
     for (k.outer: int32, 0, 64) {
       @tir.call_extern("gemm_1x1x1_update_UKVNAEBL", ..., dense, ...)
     }
   
     T_multiply[ax1] = @tir.q_multiply_shift(((dense: Buffer(dense_let,
         int32, [10], [], align=32)[ax1], ...)
   
   This caused CodegenSourceBase to later fail with this error:
     "src/target/source/codegen_source_base.cc", line 67
     Check failed: (it != var_idmap_.end()) is false: Find undefined
       Variable dense
   
   After this patch, "dense" in the call_extern is changed to read "dense_let."
   
   cc @lhutton1 @Mousius @leandron @mehrdadh 


-- 
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: commits-unsubscr...@tvm.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to