BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N > Struct Template Reference

BlockToCTileMap_KSplit_M00_N0_M01Adapt&lt; MPerBlock, NPerBlock, CGridDesc_M_N &gt; Struct Template Reference#

Composable Kernel: ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N > Struct Template Reference
ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N > Struct Template Reference

#include <block_to_ctile_map.hpp>

Public Member Functions

__host__ __device__ BlockToCTileMap_KSplit_M00_N0_M01Adapt ()=default
__host__ __device__ BlockToCTileMap_KSplit_M00_N0_M01Adapt (const CGridDesc_M_N &c_grid_desc_m_n, index_t M01=8, index_t KSplit=1)
__host__ constexpr index_t CalculateGridSize (const CGridDesc_M_N &c_grid_desc_m_n) const
template<typename TopIdx>
__host__ __device__ constexpr auto CalculateBottomIndex (const TopIdx &idx_top) const
template<typename CTileIdx, typename CTileDim>
__host__ __device__ bool ValidCTileIndex (const CTileIdx &, const CTileDim &) const
__host__ constexpr bool CheckValidity (const CGridDesc_M_N &) const

Static Public Attributes

static constexpr auto I0 = Number<0>{}
static constexpr auto I1 = Number<1>{}
static constexpr auto I2 = Number<2>{}
static constexpr auto I3 = Number<3>{}

Constructor & Destructor Documentation

◆ BlockToCTileMap_KSplit_M00_N0_M01Adapt() [1/2]

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
__host__ __device__ ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::BlockToCTileMap_KSplit_M00_N0_M01Adapt ( )
default

◆ BlockToCTileMap_KSplit_M00_N0_M01Adapt() [2/2]

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
__host__ __device__ ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::BlockToCTileMap_KSplit_M00_N0_M01Adapt ( const CGridDesc_M_N & c_grid_desc_m_n,
index_t M01 = 8,
index_t KSplit = 1 )
inline

Member Function Documentation

◆ CalculateBottomIndex()

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
template<typename TopIdx>
__host__ __device__ constexpr auto ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::CalculateBottomIndex ( const TopIdx & idx_top) const
inlineconstexpr

◆ CalculateGridSize()

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
__host__ constexpr index_t ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::CalculateGridSize ( const CGridDesc_M_N & c_grid_desc_m_n) const
inlineconstexpr

◆ CheckValidity()

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
__host__ constexpr bool ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::CheckValidity ( const CGridDesc_M_N & ) const
inlineconstexpr

◆ ValidCTileIndex()

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
template<typename CTileIdx, typename CTileDim>
__host__ __device__ bool ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::ValidCTileIndex ( const CTileIdx & ,
const CTileDim &  ) const
inline

Member Data Documentation

◆ I0

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
auto ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::I0 = Number<0>{}
staticconstexpr

◆ I1

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
auto ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::I1 = Number<1>{}
staticconstexpr

◆ I2

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
auto ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::I2 = Number<2>{}
staticconstexpr

◆ I3

template<index_t MPerBlock, index_t NPerBlock, typename CGridDesc_M_N>
auto ck::BlockToCTileMap_KSplit_M00_N0_M01Adapt< MPerBlock, NPerBlock, CGridDesc_M_N >::I3 = Number<3>{}
staticconstexpr

The documentation for this struct was generated from the following file: