BlockReduce2dCrossWarpSync< Problem_, Policy_ > Struct Template Reference#
ck_tile::BlockReduce2dCrossWarpSync< Problem_, Policy_ > Struct Template Reference
#include <block_reduce2d.hpp>
Public Types | |
| using | Problem = remove_cvref_t<Problem_> |
| using | BlockShape = typename Problem::BlockShape |
Public Member Functions | |
| template<typename YDistributedTensor_, typename ReduceFunc> | |
| CK_TILE_DEVICE void | operator() (YDistributedTensor_ &y_tensor, void *smem, const ReduceFunc &reduce_func) |
| template<typename YDistributedTensor_, typename YIndexDistributedTensor_, typename ReduceFunc> | |
| CK_TILE_DEVICE void | operator() (YDistributedTensor_ &y_tensor, YIndexDistributedTensor_ &y_index_tensor, void *smem, void *smem_indices, const ReduceFunc &reduce_func) |
Static Public Member Functions | |
| template<typename YDistributedTensor_> | |
| static CK_TILE_DEVICE constexpr index_t | GetReduceWarps () |
| template<typename YDistributedTensor_> | |
| static CK_TILE_HOST_DEVICE constexpr index_t | GetSmemSize () |
| template<typename YIndexDistributedTensor_> | |
| static CK_TILE_HOST_DEVICE constexpr index_t | GetIndicesSmemSize () |
Member Typedef Documentation
◆ BlockShape
template<typename Problem_, typename Policy_ = void>
| using ck_tile::BlockReduce2dCrossWarpSync< Problem_, Policy_ >::BlockShape = typename Problem::BlockShape |
◆ Problem
template<typename Problem_, typename Policy_ = void>
| using ck_tile::BlockReduce2dCrossWarpSync< Problem_, Policy_ >::Problem = remove_cvref_t<Problem_> |
Member Function Documentation
◆ GetIndicesSmemSize()
template<typename Problem_, typename Policy_ = void>
template<typename YIndexDistributedTensor_>
|
inlinestaticconstexpr |
◆ GetReduceWarps()
template<typename Problem_, typename Policy_ = void>
template<typename YDistributedTensor_>
|
inlinestaticconstexpr |
◆ GetSmemSize()
template<typename Problem_, typename Policy_ = void>
template<typename YDistributedTensor_>
|
inlinestaticconstexpr |
◆ operator()() [1/2]
template<typename Problem_, typename Policy_ = void>
template<typename YDistributedTensor_, typename ReduceFunc>
|
inline |
◆ operator()() [2/2]
template<typename Problem_, typename Policy_ = void>
template<typename YDistributedTensor_, typename YIndexDistributedTensor_, typename ReduceFunc>
|
inline |
The documentation for this struct was generated from the following file: