Synchronization Primitives
Atomics
| [cuda::atomic] | System-wide cuda::std::atomic objects and operations. (class template)
1.0.0 / CUDA 10.2 |
Latches
| [cuda::latch] | System-wide cuda::std::latch single-phase asynchronous thread coordination mechanism. (class template)
1.1.0 / CUDA 11.0 |
Barriers
| [cuda::barrier] | System-wide cuda::std::barrier multi-phase asynchronous thread coordination mechanism. (class template)
1.1.0 / CUDA 11.0 |
Semaphores
| [cuda::counting_semaphore] | System-wide cuda::std::counting_semaphore primitive for constraining concurrent access. (class template)
1.1.0 / CUDA 11.0 |
| [cuda::binary_semaphore] | System-wide cuda::std::binary_semaphore primitive for mutual exclusion. (class template)
1.1.0 / CUDA 11.0 |
Pipelines
The pipeline library is included in the CUDA Toolkit, but is not part of the open source libcu++ distribution.
| [cuda::pipeline] | Coordination mechanism for sequencing asynchronous operations. (class template)
CUDA 11.1 |
| [cuda::pipeline_shared_state] | [cuda::pipeline] shared state object. (class template)
CUDA 11.1 |
| [cuda::pipeline_role] | Defines producer/consumer role for a thread participating in a pipeline. (enum)
CUDA 11.1 |
| [cuda::make_pipeline] | Creates a [cuda::pipeline]. (function template)
CUDA 11.1 |
| [cuda::pipeline_consumer_wait_prior] | Blocks the current thread until all operations committed up to a prior pipeline stage complete. (function template)
CUDA 11.1 |
| [cuda::pipeline_producer_commit] | Binds operations previously issued by the current thread to a [cuda::barrier]. (function template)
CUDA 11.1 |
[asynchronous operations]: {{ "extended_api/asynchronous_operations.html" | relative_url }}
[cuda::memcpy_async]: {{ "extended_api/asynchronous_operations/memcpy_async.html" | relative_url }}
[cuda::atomic]: {{ "extended_api/synchronization_primitives/atomic.html" | relative_url }}
[cuda::barrier]: {{ "extended_api/synchronization_primitives/barrier.html" | relative_url }}
[cuda::latch]: {{ "extended_api/synchronization_primitives/latch.html" | relative_url }}
[cuda::counting_semaphore]: {{ "extended_api/synchronization_primitives/counting_semaphore.html" | relative_url }}
[cuda::binary_semaphore]: {{ "extended_api/synchronization_primitives/binary_semaphore.html" | relative_url }}
[cuda::pipeline]: {{ "extended_api/synchronization_primitives/pipeline.html" | relative_url }}
[cuda::pipeline_shared_state]: {{ "extended_api/synchronization_primitives/pipeline_shared_state.html" | relative_url }}
[cuda::pipeline_role]: {{ "extended_api/synchronization_primitives/pipeline_role.html" | relative_url }}
[cuda::make_pipeline]: {{ "extended_api/synchronization_primitives/make_pipeline.html" | relative_url }}
[cuda::pipeline_consumer_wait_prior]: {{ "extended_api/synchronization_primitives/pipeline_consumer_wait_prior.html" | relative_url }}
[cuda::pipeline_producer_commit]: {{ "extended_api/synchronization_primitives/pipeline_producer_commit.html" | relative_url }}