Skip to content
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

Compiling failure XdlopsBackwardData for fp16 #412

Open
zjing14 opened this issue Sep 1, 2020 · 7 comments
Open

Compiling failure XdlopsBackwardData for fp16 #412

zjing14 opened this issue Sep 1, 2020 · 7 comments

Comments

@zjing14
Copy link
Contributor

zjing14 commented Sep 1, 2020

./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 16, 7, 7 --weights 4, 16, 1, 1 --pads_strides_dilations 0 0 1 1 1 1 --trans_output_pads 0 0
./gridwise_convolution_backward_data_implicit_gemm_v1r1_xdlops_gnchw_gkcyx_gnkhw.hpp:68:9: error: static_assert failed due to requirement 'K % 8 == 0' "K needs to be in multiple of KPACK"
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 16, 14, 14 --weights 4, 16, 3, 3 --pads_strides_dilations 1 1 2 2 1 1 --trans_output_pads 0 0
./gridwise_convolution_backward_data_implicit_gemm_v1r1_xdlops_gnchw_gkcyx_gnkhw.hpp:68:9: error: static_assert failed due to requirement 'K % 8 == 0' "K needs to be in multiple of KPACK"
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 16, 7, 7 --weights 8, 16, 1, 1 --pads_strides_dilations 0 0 1 1 1 1 --trans_output_pads 0 0
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 16, 14, 14 --weights 8, 16, 3, 3 --pads_strides_dilations 1 1 2 2 1 1 --trans_output_pads 0 0
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 32, 7, 7 --weights 4, 32, 1, 1 --pads_strides_dilations 0 0 1 1 1 1 --trans_output_pads 0 0
./gridwise_convolution_backward_data_implicit_gemm_v1r1_xdlops_gnchw_gkcyx_gnkhw.hpp:68:9: error: static_assert failed due to requirement 'K % 8 == 0' "K needs to be in multiple of KPACK"
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 32, 14, 14 --weights 4, 32, 3, 3 --pads_strides_dilations 1 1 2 2 1 1 --trans_output_pads 0 0
./gridwise_convolution_backward_data_implicit_gemm_v1r1_xdlops_gnchw_gkcyx_gnkhw.hpp:68:9: error: static_assert failed due to requirement 'K % 8 == 0' "K needs to be in multiple of KPACK"
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 32, 7, 7 --weights 8, 32, 1, 1 --pads_strides_dilations 0 0 1 1 1 1 --trans_output_pads 0 0
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
./bin/test_conv2d --half --cmode conv --pmode default --group-count 1 --disable-backward-weights --input 16, 32, 7, 7 --weights 8, 32, 1, 1 --pads_strides_dilations 0 0 1 1 1 1 --trans_output_pads 0 0
./gridwise_gemm_xdlops_fp16_bfp16.hpp:797:9: error: static_assert failed due to requirement 'M % 256 == 0 && N % 256 == 0 && K % 8 == 0' "wrong! cannot divide work evenly among block"
@asroy
Copy link
Contributor

asroy commented Sep 3, 2020

we should deprecate this solver/kernel, because we would use following instead:
ConvHipImplicitGemmBwdDataV1R1Xdlops
gridwise_convolution_backward_data_implicit_gemm_v1r1_xdlops_nchw_kcyx_nkhw.cpp

@atamazov
Copy link
Contributor

atamazov commented Sep 3, 2020

Good news. Just in case -- if we need to quickly disable it, then changing the default value of respective env variable will do the job ( IsDisabled() -> !IsEnabled()).

@aserio
Copy link
Contributor

aserio commented Sep 22, 2020

@zjing14 and @asroy, what is the status of this issue?

@aserio
Copy link
Contributor

aserio commented Oct 6, 2020

@zjing14 please close if new PR resolves this issue

@atamazov
Copy link
Contributor

atamazov commented Oct 6, 2020

Workaround by #457. Full blown fix is not yet implemented, so let's keep it open (until W/A is removed) but lower priority. And this is not a bug anymore.

@ppanchad-amd
Copy link

ppanchad-amd commented Mar 17, 2024

@zjing14 Is this still an issue? If not, can we close this ticket? Thanks!

@huanrwan-amd
Copy link
Contributor

huanrwan-amd commented Dec 2, 2024

Hi @atamazov, is it OK to close the issue? As we are not observing the failure in the original test: "failed due to requirement 'K % 8 == 0' "K needs to be in multiple of KPACK""

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants