tile_barrier Class
Synchronizes the execution of threads that are running in the thread group (the tile) by using wait
methods. Only the runtime can instantiate this class.
Syntax
class tile_barrier;
Members
Public Constructors
Name | Description |
---|---|
tile_barrier Constructor | Initializes a new instance of the tile_barrier class. |
Public Methods
Name | Description |
---|---|
wait | Instructs all threads in the thread group (tile) to stop executing until all threads in the tile have finished waiting. |
wait_with_all_memory_fence | Blocks execution of all threads in a tile until all memory accesses have been completed and all threads in the tile have reached this call. |
wait_with_global_memory_fence | Blocks execution of all threads in a tile until all global memory accesses have been completed and all threads in the tile have reached this call. |
wait_with_tile_static_memory_fence | Blocks execution of all threads in a tile until all tile_static memory accesses have been completed and all threads in the tile have reached this call. |
Inheritance Hierarchy
tile_barrier
Requirements
Header: amp.h
Namespace: Concurrency
tile_barrier Constructor
Initializes a new instance of the class by copying an existing one.
Syntax
tile_barrier(
const tile_barrier& _Other ) restrict(amp,cpu);
Parameters
_Other
The tile_barrier
object to copy.
wait
Instructs all threads in the thread group (tile) to stop execution until all threads in the tile have finished waiting.
Syntax
void wait() const restrict(amp);
wait_with_all_memory_fence
Blocks execution of all threads in a tile until all threads in a tile have reached this call. This ensures that all memory accesses are visible to other threads in the thread tile, and have been executed in program order.
Syntax
void wait_with_all_memory_fence() const restrict(amp);
wait_with_global_memory_fence
Blocks execution of all threads in a tile until all threads in a tile have reached this call. This ensures that all global memory accesses are visible to other threads in the thread tile, and have been executed in program order.
Syntax
void wait_with_global_memory_fence() const restrict(amp);
wait_with_tile_static_memory_fence
Blocks execution of all threads in a tile until all threads in a tile have reached this call. This ensures that tile_static
memory accesses are visible to other threads in the thread tile, and have been executed in program order.
Syntax
void wait_with_tile_static_memory_fence() const restrict(amp);