-
Notifications
You must be signed in to change notification settings - Fork 443
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
AnonymousSpace #1321
AnonymousSpace #1321
Conversation
memory space which is accessible to and from all others [kokkos#1175]
don't merge, got some failures with more testing... |
Okay, fixed the dependence on
|
core/src/Kokkos_AnonymousSpace.hpp
Outdated
|
||
template<typename OtherSpace> | ||
struct MemorySpaceAccess< Kokkos::AnonymousSpace , OtherSpace > { | ||
enum { assignable = false }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be true, and also we need to test this. Assigning any memory space view to anonymous view should be possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I was kinda wondering; that's the whole idea right?
enum { accessible = true }; | ||
enum { deepcopy = true }; | ||
}; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to add VerifyExecutionCanAccessMemorySpace ???
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is strange, but I can't actually find any use in Kokkos core of VerifyExecutionCanAccessMemorySpace
, even indirectly through a macro. Only the new ScatterView
uses it. Everything else including View::operator()
safety check uses MemorySpaceAccess
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tpetra still uses it a lot though, so I'll add it.
Only spot check failures are due to module issues
|
I came up with a workaround for the missing module and threw that into this PR as well. Spot checks now all pass:
|
As soon as it actually doesn't segfault our nightlies on some machines .... |
@crtrott weird :( |
see possible fix in #1328 |
memory space which is accessible
to and from all others,
also includes a unit test
[#1175]