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

Kokkos::deep_copy error with CudaUVM and Kokkos::Serial spaces #1652

Closed
ndellingwood opened this issue May 31, 2018 · 2 comments
Closed

Kokkos::deep_copy error with CudaUVM and Kokkos::Serial spaces #1652

ndellingwood opened this issue May 31, 2018 · 2 comments
Assignees
Labels
Bug Broken / incorrect code; it could be Kokkos' responsibility, or others’ (e.g., Trilinos)
Milestone

Comments

@ndellingwood
Copy link
Contributor

Based on issue trilinos/Trilinos#2827, created an isolated reproducer where deep_copy of a View from Serial space to CudaUVMSpace caused errors of the type CUDA Exception: Device Illegal Address

@crtrott and @dsunder helped debug the issue - in deep_copy the views are passed to view_copy with memory space info stripped away, leading to the DstExecCanAccessSrc/SrcExecCanAccessDst conditional checks to error.

Fix:
Replacing view_copy(Impl::view_copy(typename dst_type::uniform_runtime_nomemspace_type(dst), typename src_type::uniform_runtime_const_nomemspace_type(src)); with view_copy(dst,src); fixed the issue in the reproducer.

Working on a unit test to ensure other potential cases are caught, will then issue hotfix to Trilinos.

@ndellingwood ndellingwood added the Bug Broken / incorrect code; it could be Kokkos' responsibility, or others’ (e.g., Trilinos) label May 31, 2018
@ndellingwood ndellingwood self-assigned this May 31, 2018
@ndellingwood ndellingwood added this to the 2018 July milestone May 31, 2018
@mhoemmen
Copy link
Contributor

mhoemmen commented Jun 1, 2018

@micahahoward

ndellingwood added a commit that referenced this issue Jun 1, 2018
ndellingwood added a commit that referenced this issue Jun 1, 2018
Addresses issue #1652 and partially trilinos/Trilinos#2827

 Changes to be committed:
	modified:   CMakeLists.txt
	modified:   Makefile
	new file:   TestViewCopy.hpp
	new file:   cuda/TestCudaHostPinned_ViewCopy.cpp
	new file:   cuda/TestCudaUVM_ViewCopy.cpp
	new file:   rocm/TestROCmHostPinned_ViewCopy.cpp
ndellingwood added a commit that referenced this issue Jun 4, 2018
@crtrott
Copy link
Member

crtrott commented Jul 2, 2018

I believe this is fixed.

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

3 participants