kokkos / stdBLAS

Reference Implementation for stdBLAS
Other
127 stars 22 forks source link

exclude native `gemm` test in Kokkos+default config #220

Closed mzuzek closed 2 years ago

mzuzek commented 2 years ago

In build with default Kokkos execution space (both LINALG_ENABLE_KOKKOS and LINALG_ENABLE_KOKKOS_DEFAULT enabled) the native gemm test runs Kokkos implementation and fails on missing overloads for transposed- and scaled-wrapped inputs - see #218.

One possible workaround is to disable the test in considered scenario, if we don't plan to support the problematic accessors in the Kokkos implementation any soon.

On this PR I'm proposing generic test exclusion list (STDBLAS_TESTS_EXCLUDE) to avoid "polluting" native tests CMake scripting with Kokkos code, which would happen with simpler solution like:

if(NOT (LINALG_ENABLE_KOKKOS AND LINALG_ENABLE_KOKKOS_DEFAULT))
  linalg_add_test(gemm)
endif()

Detected by tests [to be] failing on CI: 7 - gemm (SEGFAULT)

mhoemmen commented 2 years ago

One possible workaround is to disable the test in considered scenario, if we don't plan to support the problematic accessors in the Kokkos implementation any soon.

The scaled and transposed input matrix modifiers are fundamental to the proposal. Instead of disabling the failing test, would you consider a temporary fix that falls back to the sequential implementation if it encounters these accessors?

mzuzek commented 2 years ago

@mhoemmen

Instead of disabling the failing test, would you consider a temporary fix that falls back to the sequential implementation if it encounters these accessors?

Sure, please see https://github.com/kokkos/stdBLAS/pull/222. I've created new PR for the alternative solution, so this one can be just closed to mark this approach as rejected.

mhoemmen commented 2 years ago

@MikolajZuzek Thanks for explaining! I'll close this PR then.