BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ > Struct Template Reference

BlockGemmARegBRegCRegV2CustomPolicy&lt; AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ &gt; Struct Template Reference#

Composable Kernel: ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ > Struct Template Reference
ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ > Struct Template Reference

#include <block_gemm_areg_breg_creg_v2_custom_policy.hpp>

Public Types

using AType = remove_cvref_t<AType_>
using BType = remove_cvref_t<BType_>
using CType = remove_cvref_t<CType_>
using BlockWarps = remove_cvref_t<BlockWarps_>
using WarpGemm = remove_cvref_t<WarpGemm_>

Static Public Member Functions

template<typename Problem>
static CK_TILE_HOST_DEVICE constexpr auto GetWarpGemmMWarpNWarp ()

Static Public Attributes

static constexpr index_t kMWarps = BlockWarps::at(number<0>{})
static constexpr index_t kNWarps = BlockWarps::at(number<1>{})
static constexpr index_t kKWarps = BlockWarps::at(number<2>{})
static constexpr auto BlockGemmLoopOrder = BlockGemmLoopOrder_

Member Typedef Documentation

◆ AType

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
using ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::AType = remove_cvref_t<AType_>

◆ BlockWarps

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
using ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::BlockWarps = remove_cvref_t<BlockWarps_>

◆ BType

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
using ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::BType = remove_cvref_t<BType_>

◆ CType

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
using ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::CType = remove_cvref_t<CType_>

◆ WarpGemm

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
using ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::WarpGemm = remove_cvref_t<WarpGemm_>

Member Function Documentation

◆ GetWarpGemmMWarpNWarp()

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
template<typename Problem>
CK_TILE_HOST_DEVICE constexpr auto ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::GetWarpGemmMWarpNWarp ( )
inlinestaticconstexpr

Member Data Documentation

◆ BlockGemmLoopOrder

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
auto ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::BlockGemmLoopOrder = BlockGemmLoopOrder_
staticconstexpr

◆ kKWarps

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
index_t ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::kKWarps = BlockWarps::at(number<2>{})
staticconstexpr

◆ kMWarps

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
index_t ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::kMWarps = BlockWarps::at(number<0>{})
staticconstexpr

◆ kNWarps

template<typename AType_, typename BType_, typename CType_, typename BlockWarps_, typename WarpGemm_, GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
index_t ck_tile::BlockGemmARegBRegCRegV2CustomPolicy< AType_, BType_, CType_, BlockWarps_, WarpGemm_, BlockGemmLoopOrder_ >::kNWarps = BlockWarps::at(number<1>{})
staticconstexpr

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