-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] matmul
do not support int32 tensors.
#538
Comments
Hi @AtomicVar, thanks for the report. You're right cuBLAS doesn't support it. The reason we disabled CUTLASS is because of the compile times taking extremely long in the unit tests. Even though the functionality and speed were both adequate, the compiles were taking over 40 minutes. We can add a message for this saying it's an unsupported type. |
@AtomicVar I've submitted MR #540 to resolve this |
@AtomicVar according to the cublas team we're not meeting the requirements here: https://docs.nvidia.com/cuda/cublas/index.html#cublasltmatmul Namely A must be transposed. If that still works for you, we can add support for it when those requirements are met. |
@cliffburdick Actually I can use |
Describe the bug
It seems like the cuBLASLt-backed GEMM (
matx::matmul
) do not supportint
type, and it just gives wrong result without complaining about unsupported types.To Reproduce
Steps to reproduce the behavior:
Expected behavior
The result should be
[14, 32]
like float matmul:Code snippers
Listed above.
System details (please complete the following information):
Additional context
I also tried turning on CUTLASS (
-DMATX_EN_CUTLASS=ON
) and it can supportint
tensors with some minor fixes.Currently in MatX, the
matmul_impl()
uses cuBLASLt as the default GEMM provider and don't have a easy way to switch to CUTLASS, so I changed the template default parameter intoPROVIDER_TYPE_CUTLASS
:Then I changed this in
matxMatMulHandle_t::MatMulLaunch
to suppress the compiler's float-to-int conversion error:Now the output is normal:
My suggestion
If it is not necessary to support int32 GEMM, we can throw an error to the user that it is not supported, and tell him/her to either use the CUTLASS's version or use float32 as the solution.
The text was updated successfully, but these errors were encountered: