Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ > Struct Template Reference

Reduce2dProblem&lt; XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ &gt; Struct Template Reference#

Composable Kernel: ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ > Struct Template Reference
ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ > Struct Template Reference

#include <reduce2d_problem.hpp>

Public Types

using XDataType = remove_cvref_t< XDataType_ >
 
using ComputeDataType = remove_cvref_t< ComputeDataType_ >
 
using YDataType = remove_cvref_t< YDataType_ >
 
using BlockShape = remove_cvref_t< BlockShape_ >
 
using ReduceOp = ReduceOp_
 

Static Public Attributes

static constexpr bool kNeedCrossLaneSync = BlockShape::ThreadPerWarp_N > 1
 
static constexpr bool kNeedCrossWarpSync = BlockShape::WarpPerBlock_N > 1
 

Member Typedef Documentation

◆ BlockShape

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
using ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::BlockShape = remove_cvref_t<BlockShape_>

◆ ComputeDataType

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
using ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::ComputeDataType = remove_cvref_t<ComputeDataType_>

◆ ReduceOp

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
using ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::ReduceOp = ReduceOp_

◆ XDataType

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
using ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::XDataType = remove_cvref_t<XDataType_>

◆ YDataType

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
using ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::YDataType = remove_cvref_t<YDataType_>

Member Data Documentation

◆ kNeedCrossLaneSync

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
constexpr bool ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::kNeedCrossLaneSync = BlockShape::ThreadPerWarp_N > 1
staticconstexpr

◆ kNeedCrossWarpSync

template<typename XDataType_ , typename ComputeDataType_ , typename YDataType_ , typename BlockShape_ , typename ReduceOp_ >
constexpr bool ck_tile::Reduce2dProblem< XDataType_, ComputeDataType_, YDataType_, BlockShape_, ReduceOp_ >::kNeedCrossWarpSync = BlockShape::WarpPerBlock_N > 1
staticconstexpr

The documentation for this struct was generated from the following file:
  • /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/reduce/pipeline/reduce2d_problem.hpp