Shukai Duan
Shukai Duan
Hi @Stonepia Thanks for the feedback. It works for me!
Hi @Stonepia, I was trying to do the same thing for torch.ops.torch_ipex.mm_qkv_out(input, self.weight, self.bias, q, k, v). With a fake register as an example: ```python @torch.library.register_fake("torch_ipex::mm_qkv_out.xpu") def _(query, key, value,...
I try to solve the problem by modifying code in [csrc](https://github.com/intel/intel-extension-for-pytorch/blob/5b268a58047430005f23023a0c8dbf55882c50c8/csrc/gpu/aten/operators/XeGemm.cpp#L945C3-L949C38) ```cpp IPEX_OP_REGISTER("mm_qkv_out.xpu", at::AtenIpexTypeXPU::mm_qkv_out); IPEX_OP_REGISTER_DISPATCH( "mm_qkv_out.xpu", at::AtenIpexTypeXPU::mm_qkv_out_autocast, c10::DispatchKey::AutocastXPU); ``` to ```cpp // IPEX_OP_REGISTER("mm_qkv_out", at::AtenIpexTypeXPU::mm_qkv_out); IPEX_OP_REGISTER_DISPATCH( "mm_qkv_out", at::AtenIpexTypeXPU::mm_qkv_out, c10::DispatchKey::XPU); ``` The...
@Stonepia Is there any update on this? Thanks
@Stonepia Thanks for replying, and thanks for your effort on this matter. Essentially, I want the torch.compile to understand the operator with a simple fake tensor registration. So, if the...
@Stonepia Hi, I accidentally marked this thread as closed. Can you reopen it?
@Stonepia Thanks for replying, and thanks for your effort on this matter. Essentially, I want the torch.compile to understand the operator with a simple fake tensor registration. So, if the...
I see what you mean. I've already tried the custom operator registration. It works. The only thing I'm not so sure about is these headers. For example: https://github.com/intel/intel-extension-for-pytorch/blob/5b268a58047430005f23023a0c8dbf55882c50c8/csrc/gpu/aten/operators/XeGemm.cpp#L1-L14 But I...