cooperative_groups Namespace Reference

cooperative_groups Namespace Reference#

HIP Runtime API Reference: cooperative_groups Namespace Reference
cooperative_groups Namespace Reference

Namespaces

namespace  impl
 

Data Structures

class  coalesced_group
 The coalesced_group cooperative group type. More...
 
class  grid_group
 The grid cooperative group type. More...
 
class  multi_grid_group
 The multi-grid cooperative group type. More...
 
class  parent_group_info
 User exposed API that captures the state of the parent group pre-partition. More...
 
class  thread_block
 The workgroup (thread-block in CUDA terminology) cooperative group type. More...
 
class  thread_block_tile
 Group type - thread_block_tile. More...
 
class  thread_block_tile< size, void >
 
class  thread_block_tile_base
 
class  thread_block_tile_type
 Group type - thread_block_tile. More...
 
class  thread_block_tile_type< tileSize, void >
 
class  thread_group
 The base type of all cooperative group types. More...
 
class  tile_base
 
class  tiled_group
 The tiled_group cooperative group type. More...
 

Functions

multi_grid_group this_multi_grid ()
 User-exposed API interface to construct grid cooperative group type object - multi_grid_group.
 
grid_group this_grid ()
 User-exposed API interface to construct grid cooperative group type object - grid_group.
 
thread_block this_thread_block ()
 User-exposed API interface to construct workgroup cooperative group type object - thread_block.
 
coalesced_group coalesced_threads ()
 User-exposed API to create coalesced groups.
 
template<class CGTy >
uint32_t group_size (CGTy const &g)
 Returns the size of the group.
 
template<class CGTy >
uint32_t thread_rank (CGTy const &g)
 Returns the rank of thread of the group.
 
template<class CGTy >
bool is_valid (CGTy const &g)
 Returns true if the group has not violated any API constraints.
 
template<class CGTy >
void sync (CGTy const &g)
 Synchronizes the threads in the group.
 
thread_group this_thread ()
 
thread_group tiled_partition (const thread_group &parent, unsigned int tile_size)
 User-exposed API to partition groups.
 
thread_group tiled_partition (const thread_block &parent, unsigned int tile_size)
 
tiled_group tiled_partition (const tiled_group &parent, unsigned int tile_size)
 
coalesced_group tiled_partition (const coalesced_group &parent, unsigned int tile_size)
 
template<unsigned int size, class ParentCGTy >
thread_block_tile< size, ParentCGTy > tiled_partition (const ParentCGTy &g)
 Create a partition.
 
coalesced_group binary_partition (const coalesced_group &cgrp, bool pred)
 Binary partition.
 
template<unsigned int size, class parent >
coalesced_group binary_partition (const thread_block_tile< size, parent > &tgrp, bool pred)
 Binary partition.