You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A thread scope specifies the kind of threads that can synchronize with each other using a primitive such as an atomic or a barrier.
Each thread (CPU or GPU) is related to itself by the thread thread scope, specified with thread_scope_thread.
This example, however, suggests that multiple threads of execution - the current thread and the threads performing the memcpy_async - can be synchronized using the synchronization primitives with thread_scope_thread.
A fix could be to change the documentation to:
The thread thread scope relates each thread (CPU or GPU) and its ??? threads to itself.
where ??? would be a name for the set of threads that includes the ones used by the memcpy_asyncs.
The text was updated successfully, but these errors were encountered:
I don't think our current docs imply that there's inter-thread synchronization, because I don't think we mention any side threads in memcpy_async docs; we only say that we issue an async operation on the current thread and that's it.
We need to say that the _async operations are performed as-if in another thread, but there is a special exception where this helper thread is related to the requestor thread via all scope relationship, including surprisingly the _thread scope.
According to the thread scope documentation:
This example, however, suggests that multiple threads of execution - the current thread and the threads performing the
memcpy_async
- can be synchronized using the synchronization primitives withthread_scope_thread
.A fix could be to change the documentation to:
where
???
would be a name for the set of threads that includes the ones used by thememcpy_async
s.The text was updated successfully, but these errors were encountered: