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

Cuda Clang spurious test failure in impl_view_accessible #1753

Closed
crtrott opened this issue Aug 16, 2018 · 7 comments
Closed

Cuda Clang spurious test failure in impl_view_accessible #1753

crtrott opened this issue Aug 16, 2018 · 7 comments
Assignees
Labels
Bug Broken / incorrect code; it could be Kokkos' responsibility, or others’ (e.g., Trilinos)
Milestone

Comments

@crtrott
Copy link
Member

crtrott commented Aug 16, 2018

I reduced it down to running:

./KokkosCore_UnitTest_Cuda --gtest_filter=cuda.impl_view_accessible:cuda.team_scratch*:cuda.team_poli*:cuda.multi_level_scratch:cuda.uvm
Note: Google Test filter = cuda.impl_view_accessible:cuda.team_scratch*:cuda.team_poli*:cuda.multi_level_scratch:cuda.uvm
[==========] Running 5 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 5 tests from cuda
[ RUN      ] cuda.team_scratch_request
[       OK ] cuda.team_scratch_request (1 ms)
[ RUN      ] cuda.multi_level_scratch
[       OK ] cuda.multi_level_scratch (125 ms)
[ RUN      ] cuda.team_policy_max_recommended
[       OK ] cuda.team_policy_max_recommended (595 ms)
[ RUN      ] cuda.uvm
[       OK ] cuda.uvm (3 ms)
[ RUN      ] cuda.impl_view_accessible
/home/crtrott/Kokkos/kokkos/core/unit_test/cuda/TestCuda_Spaces.cpp:323: Failure
Value of: 0
Expected: error_count
Which is: -9160321642071588864
[  FAILED  ] cuda.impl_view_accessible (5 ms)
[----------] 5 tests from cuda (729 ms total)

[----------] Global test environment tear-down
[==========] 5 tests from 1 test case ran. (729 ms total)
[  PASSED  ] 4 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] cuda.impl_view_accessible

If I remove any of the other 4 tests it doesn't fail reliably anymore.

@crtrott crtrott self-assigned this Aug 16, 2018
@crtrott crtrott added the Bug Broken / incorrect code; it could be Kokkos' responsibility, or others’ (e.g., Trilinos) label Aug 16, 2018
@crtrott
Copy link
Member Author

crtrott commented Aug 16, 2018

This is with Clang 6 Cuda 9.0 on Volta.

@crtrott
Copy link
Member Author

crtrott commented Aug 16, 2018

Running this thing with cuda-memcheck reports no errors and the test passes too!! How very helpful.
valgrind doesn't report anything either.

@crtrott
Copy link
Member Author

crtrott commented Aug 16, 2018

Workaround looks similar to previous issue on nvcc with permanent block divergence, but can't detect permanent block divergence in this case with clang ...

@crtrott
Copy link
Member Author

crtrott commented Aug 16, 2018

Might be that this is only an issue in Clang 6 with Cuda 9 for Volta (which is somewhat beta capability). Need to check again with Cuda 9.2 and Clang 7.

@crtrott
Copy link
Member Author

crtrott commented Aug 20, 2018

Not fixed in Clang 7/Cuda 9.1

crtrott added a commit that referenced this issue Aug 20, 2018
@ibaned
Copy link
Contributor

ibaned commented Aug 22, 2018

@crtrott is this fixed by your rewrite of the CUDA reduction?

@ibaned ibaned added this to the 2018 July milestone Aug 22, 2018
@crtrott
Copy link
Member Author

crtrott commented Aug 22, 2018

Yeah but am addressing more performance issues right now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Broken / incorrect code; it could be Kokkos' responsibility, or others’ (e.g., Trilinos)
Projects
None yet
Development

No branches or pull requests

2 participants