BlockGemmARegBSmemCRegV2< Problem_, Policy_ > Struct Template Reference

BlockGemmARegBSmemCRegV2&lt; Problem_, Policy_ &gt; Struct Template Reference#

Composable Kernel: ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ > Struct Template Reference
ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ > Struct Template Reference

#include <block_gemm_areg_bsmem_creg_v2.hpp>

Public Types

using Problem = remove_cvref_t<Problem_>
using Policy = remove_cvref_t<Policy_>
using ADataType = remove_cvref_t<typename Problem::ADataType>
using BDataType = remove_cvref_t<typename Problem::BDataType>
using CDataType = remove_cvref_t<typename Problem::CDataType>
using BlockGemmShape = remove_cvref_t<typename Problem::BlockGemmShape>

Public Member Functions

template<typename CBlockTensor, typename ABlockTensorTmp, typename BBlockWindowTmp>
CK_TILE_DEVICE void operator() (CBlockTensor &c_block_tensor, const ABlockTensorTmp &a_block_tensor_tmp, const BBlockWindowTmp &b_block_window_tmp) const
template<typename ABlockTensorTmp, typename BBlockWindowTmp>
CK_TILE_DEVICE auto operator() (const ABlockTensorTmp &a_block_tensor_tmp, const BBlockWindowTmp &b_block_window_tmp) const

Static Public Member Functions

template<index_t MPerBlock = BlockGemmShape::kM, index_t KPerBlock = BlockGemmShape::kK>
static CK_TILE_DEVICE constexpr auto MakeABlockTileDistribution ()
static CK_TILE_DEVICE constexpr auto MakeCBlockTile ()

Static Public Attributes

static constexpr index_t kBlockSize = Problem::kBlockSize

Member Typedef Documentation

◆ ADataType

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::ADataType = remove_cvref_t<typename Problem::ADataType>

◆ BDataType

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::BDataType = remove_cvref_t<typename Problem::BDataType>

◆ BlockGemmShape

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::BlockGemmShape = remove_cvref_t<typename Problem::BlockGemmShape>

◆ CDataType

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::CDataType = remove_cvref_t<typename Problem::CDataType>

◆ Policy

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::Policy = remove_cvref_t<Policy_>

◆ Problem

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
using ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::Problem = remove_cvref_t<Problem_>

Member Function Documentation

◆ MakeABlockTileDistribution()

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
template<index_t MPerBlock = BlockGemmShape::kM, index_t KPerBlock = BlockGemmShape::kK>
CK_TILE_DEVICE constexpr auto ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::MakeABlockTileDistribution ( )
inlinestaticconstexpr

◆ MakeCBlockTile()

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
CK_TILE_DEVICE constexpr auto ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::MakeCBlockTile ( )
inlinestaticconstexpr

◆ operator()() [1/2]

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
template<typename CBlockTensor, typename ABlockTensorTmp, typename BBlockWindowTmp>
CK_TILE_DEVICE void ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::operator() ( CBlockTensor & c_block_tensor,
const ABlockTensorTmp & a_block_tensor_tmp,
const BBlockWindowTmp & b_block_window_tmp ) const
inline

◆ operator()() [2/2]

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
template<typename ABlockTensorTmp, typename BBlockWindowTmp>
CK_TILE_DEVICE auto ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::operator() ( const ABlockTensorTmp & a_block_tensor_tmp,
const BBlockWindowTmp & b_block_window_tmp ) const
inline

Member Data Documentation

◆ kBlockSize

template<typename Problem_, typename Policy_ = BlockGemmARegBSmemCRegV2DefaultPolicy>
index_t ck_tile::BlockGemmARegBSmemCRegV2< Problem_, Policy_ >::kBlockSize = Problem::kBlockSize
staticconstexpr

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