Closed
Description
Describe the bug
cutlass currently disables WMMA instructions when compiled with clang.
cutlass/include/cutlass/arch/wmma.h
Lines 37 to 38 in e1cd8c7
The comment is no longer valid and the tests work fine with the condition above removed.
Steps/Code to reproduce bug
Build test/unit/gemm/warp/gemm_sm75.cu with clang and run it on A100. Currently the test fils with:
[----------] 5 tests from SM75_warp_gemm_tensor_op_crosswise_b1
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_64x64x512_8x8x128
void cutlass::arch::Mma<cutlass::gemm::GemmShape<8, 8, 128>, 32, cutlass::integer_subbyte<1, false>, cutlass::layout::RowMajor, cutlass::integer_subbyte<1, false>, cutlass::layout::ColumnMajor, int, cutlass::layout::RowMajor, cutlass::arch::OpXorPopc>::operator()(FragmentC &, const FragmentA &, const FragmentB &, const FragmentC &) const not implemented
...
Expected behavior
With the condition above removed, the tests work fine:
[----------] 5 tests from SM75_warp_gemm_tensor_op_crosswise_b1
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_64x64x512_8x8x128
[ OK ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_64x64x512_8x8x128 (79 ms)
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_64x32x512_8x8x128
[ OK ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_64x32x512_8x8x128 (58 ms)
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_32x32x512_8x8x128
[ OK ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_32x32x512_8x8x128 (40 ms)
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_32x16x512_8x8x128
[ OK ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_32x16x512_8x8x128 (53 ms)
[ RUN ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_16x16x512_8x8x128
[ OK ] SM75_warp_gemm_tensor_op_crosswise_b1.128x128x512_16x16x512_8x8x128 (38 ms)
[----------] 5 tests from SM75_warp_gemm_tensor_op_crosswise_b1 (270 ms total)