/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h File Reference

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h File Reference#

HIP Runtime API Reference: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h File Reference
amd_hip_cooperative_groups.h File Reference

Device side implementation of Cooperative Group feature. More...

#include <hip/amd_detail/hip_cooperative_groups_helper.h>
Include dependency graph for amd_hip_cooperative_groups.h:

Go to the source code of this file.

Data Structures

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

Namespaces

namespace  cooperative_groups
 
namespace  cooperative_groups::impl
 

Functions

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

Detailed Description

Device side implementation of Cooperative Group feature.

Defines new types and device API wrappers related to Cooperative Group feature, which the programmer can directly use in his kernel(s) in order to make use of this feature.