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

BLAS test failures with non-ETI-only testing #2061

Closed
brian-kelley opened this issue Dec 6, 2023 · 1 comment
Closed

BLAS test failures with non-ETI-only testing #2061

brian-kelley opened this issue Dec 6, 2023 · 1 comment

Comments

@brian-kelley
Copy link
Contributor

brian-kelley commented Dec 6, 2023

With non-ETI testing enabled, some BLAS unit tests are failing on CUDA:

1: [  FAILED  ] 28 tests, listed below:
1: [  FAILED  ] Cuda.axpby_unification_float
1: [  FAILED  ] Cuda.axpby_mv_unification_float
1: [  FAILED  ] Cuda.axpby_unification_double
1: [  FAILED  ] Cuda.axpby_mv_unification_double
1: [  FAILED  ] Cuda.axpby_unification_complex_double
1: [  FAILED  ] Cuda.axpby_mv_unification_complex_double
1: [  FAILED  ] Cuda.axpby_unification_int
1: [  FAILED  ] Cuda.axpby_mv_unification_int
1: [  FAILED  ] Cuda.axpby_unification_double_int
1: [  FAILED  ] Cuda.axpby_double_mv_unification_int
1: [  FAILED  ] Cuda.ger_float
1: [  FAILED  ] Cuda.ger_complex_float
1: [  FAILED  ] Cuda.ger_double
1: [  FAILED  ] Cuda.ger_complex_double
1: [  FAILED  ] Cuda.ger_int
1: [  FAILED  ] Cuda.ger_double_int_float
1: [  FAILED  ] Cuda.syr_float
1: [  FAILED  ] Cuda.syr_complex_float
1: [  FAILED  ] Cuda.syr_double
1: [  FAILED  ] Cuda.syr_complex_double
1: [  FAILED  ] Cuda.syr_int
1: [  FAILED  ] Cuda.syr_int_float
1: [  FAILED  ] Cuda.syr2_float
1: [  FAILED  ] Cuda.syr2_complex_float
1: [  FAILED  ] Cuda.syr2_double
1: [  FAILED  ] Cuda.syr2_complex_double
1: [  FAILED  ] Cuda.syr2_int
1: [  FAILED  ] Cuda.syr2_int_float_double

The error message for the ger failures:

1: C++ exception with description "Error: Kokkos::deep_copy with no available copy mechanism: Y to Y_mirror" thrown in the test body.

For the others:

1: C++ exception with description "Error: Kokkos::deep_copy with no available copy mechanism: X to X_mirror" thrown in the test body.

This was with the configuration

../kokkos-kernels/cm_generate_makefile.bash \
  --with-devices=cuda \
  --arch=SKX,Pascal61 --release \
  --disable-test-eti-only \

or for raw CMake, it's the flags -DKokkosKernels_ENABLE_TESTS=ON -DKokkosKernels_TEST_ETI_ONLY=OFF.

@eeprude I think this is happening because the test is trying to copy non-contiguous views. Lines like

Kokkos::deep_copy(x.h_view, x.d_view);

should be

Kokkos::deep_copy(x.h_base, x.d_base);

h_view and d_view are subviews of h_base and d_base respectively, and h_base and d_base are always contiguous. The view_stride_adapter manages that so that we can test kernels more easily with LayoutStride views.

@eeprude
Copy link
Contributor

eeprude commented Dec 6, 2023

@brian-kelley Thanks for the hint. I will work on it later today or this Thursday.

lucbv added a commit that referenced this issue Dec 18, 2023
Correcting BLAS test failures with cuda when ETI_ONLY = OFF (issue #2061)
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

3 participants