/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/epilogue/default_2d_epilogue.hpp Source File#
default_2d_epilogue.hpp
Go to the documentation of this file.
Definition: cluster_descriptor.hpp:13
constexpr CK_TILE_HOST_DEVICE auto generate_tie(F &&f, number< N >)
Definition: tuple.hpp:435
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition: type_traits.hpp:21
CK_TILE_DEVICE auto tile_elementwise_inout_unpack(const InElementFunc &in_element_func, const Tuple &t, std::index_sequence< I... >)
Template function that "unpacks" a tuple and applies an element-wise operation.
Definition: tile_elementwise.hpp:71
CK_TILE_DEVICE void buffer_store_fence(index_t cnt=0)
Definition: amd_buffer_addressing.hpp:1000
CK_TILE_DEVICE void store_tile_raw(tile_window_with_static_lengths< BottomTensorView_, WindowLengths_ > &tile_window_tmp, const static_distributed_tensor< DataType_, TileDistribution_ > &dstr_tensor)
Definition: store_tile.hpp:46
constexpr CK_TILE_DEVICE auto make_tile_window(null_tensor_view, const WindowLengths &window_lengths, const multi_index< WindowLengths::size()> &, Ts &&...)
Definition: null_tile_window.hpp:75
constexpr CK_TILE_HOST_DEVICE auto generate_tuple(F &&f, number< N >)
Definition: tuple.hpp:429
constexpr CK_TILE_HOST_DEVICE auto make_tuple(Xs &&... xs)
Definition: tuple.hpp:360
constexpr CK_TILE_HOST_DEVICE auto concat_tuple_of_reference(const tuple< X &... > &tx, const tuple< Y &... > &ty)
Definition: tuple.hpp:443
CK_TILE_DEVICE void update_tile(tile_window_with_static_lengths< BottomTensorView_, WindowLengths_ > &tile_window_tmp, const static_distributed_tensor< DataType_, TileDistribution_ > &dstr_tensor)
Definition: update_tile.hpp:22
CK_TILE_DEVICE void store_tile(tile_window_with_static_lengths< BottomTensorView_, WindowLengths_ > &tile_window_tmp, const static_distributed_tensor< DataType_, TileDistribution_ > &dstr_tensor)
Definition: store_tile.hpp:23
CK_TILE_DEVICE auto load_tile(const TileWindow_ &tile_window, number< i_access >={}, bool_constant< oob_conditional_check >={})
Definition: load_tile.hpp:22
typename impl::WarpGemmDispatcher< AType, BType, AccType, MPerWave, NPerWave, KPerWave, TransposeC, SwizzleA, UseStructuredSparsity, AttrNumAccess >::Type WarpGemmDispatcher
Definition: warp_gemm_dispatcher.hpp:178
CK_TILE_DEVICE void update_tile_raw(tile_window_with_static_distribution< BottomTensorView_, WindowLengths_, TileDistribution_, NumCoord > &tile_window, const static_distributed_tensor< DataType_, TileDistribution_ > &dstr_tensor, number< i_access >={}, bool_constant< oob_conditional_check >={}, bool_constant< pre_nop >={})
Definition: update_tile.hpp:68
Definition: default_2d_epilogue.hpp:77
remove_cvref_t< typename Problem::ODataType > ODataType
Definition: default_2d_epilogue.hpp:80
CK_TILE_DEVICE auto operator()(ODramWindowTmp &o_dram_window_tmp, const OAccTile &o_acc_tile, const DsDramWindows &ds_dram_windows, void *=nullptr)
Definition: default_2d_epilogue.hpp:91
remove_cvref_t< Problem_ > Problem
Definition: default_2d_epilogue.hpp:78
remove_cvref_t< typename Problem::AccDataType > AccDataType
Definition: default_2d_epilogue.hpp:79
static constexpr bool UseRawStore
Definition: default_2d_epilogue.hpp:83
static constexpr memory_operation_enum MemoryOperation
Definition: default_2d_epilogue.hpp:84
static constexpr CK_TILE_HOST_DEVICE index_t GetSmemSize()
Definition: default_2d_epilogue.hpp:86
Definition: default_2d_epilogue.hpp:21
static constexpr bool UseRawStore
Definition: default_2d_epilogue.hpp:26
remove_cvref_t< ODataType_ > ODataType
Definition: default_2d_epilogue.hpp:23
remove_cvref_t< AccDataType_ > AccDataType
Definition: default_2d_epilogue.hpp:22
static constexpr bool kPadM
Definition: default_2d_epilogue.hpp:24
static constexpr memory_operation_enum MemoryOperation
Definition: default_2d_epilogue.hpp:27
static constexpr bool kPadN
Definition: default_2d_epilogue.hpp:25
static constexpr index_t NumDTensor
Definition: default_2d_epilogue.hpp:28
Definition: default_2d_epilogue.hpp:159
remove_cvref_t< typename Problem::AccDataType > AccDataType
Definition: default_2d_epilogue.hpp:163
static constexpr index_t kMPerXdl
Definition: default_2d_epilogue.hpp:172
static constexpr index_t kNPerXdl
Definition: default_2d_epilogue.hpp:173
static constexpr index_t kKPerXdl
Definition: default_2d_epilogue.hpp:174
remove_cvref_t< typename Problem::CDElementwise > CDElementwise
Definition: default_2d_epilogue.hpp:170
static constexpr CK_TILE_HOST_DEVICE auto GetVectorSizeC()
Definition: default_2d_epilogue.hpp:187
static constexpr index_t isCTransposed
Definition: default_2d_epilogue.hpp:175
remove_cvref_t< typename Problem::CLayout > CLayout
Definition: default_2d_epilogue.hpp:171
remove_cvref_t< typename Problem::ODataType > ODataType
Definition: default_2d_epilogue.hpp:164
remove_cvref_t< typename Problem::DsDataType > DsDataType
Definition: default_2d_epilogue.hpp:168
remove_cvref_t< typename Problem::BDataType > BDataType
Definition: default_2d_epilogue.hpp:162
std::conditional_t< std::is_same_v< BDataType, pk_int4_t >, ADataType, BDataType > BTypeToUse
Definition: default_2d_epilogue.hpp:167
static constexpr CK_TILE_HOST_DEVICE auto GetVectorSizeD([[maybe_unused]] number< I > index)
Definition: default_2d_epilogue.hpp:240
WarpGemmDispatcher< ADataType, BTypeToUse, AccDataType, kMPerXdl, kNPerXdl, kKPerXdl, isCTransposed > WG
Definition: default_2d_epilogue.hpp:183
remove_cvref_t< typename Problem::ADataType > ADataType
Definition: default_2d_epilogue.hpp:161
typename WG::CWarpDstr CWarpDstr
Definition: default_2d_epilogue.hpp:185
remove_cvref_t< typename Problem::DsLayout > DsLayout
Definition: default_2d_epilogue.hpp:169
remove_cvref_t< Problem_ > Problem
Definition: default_2d_epilogue.hpp:160
Definition: default_2d_epilogue.hpp:55
remove_cvref_t< DsLayout_ > DsLayout
Definition: default_2d_epilogue.hpp:61
static constexpr index_t kNPerXdl
Definition: default_2d_epilogue.hpp:65
remove_cvref_t< CLayout_ > CLayout
Definition: default_2d_epilogue.hpp:58
static constexpr index_t kMPerBlock
Definition: default_2d_epilogue.hpp:62
static constexpr index_t kNPerBlock
Definition: default_2d_epilogue.hpp:63
static constexpr index_t isCTransposed
Definition: default_2d_epilogue.hpp:67
remove_cvref_t< CDElementwise_ > CDElementwise
Definition: default_2d_epilogue.hpp:60
static constexpr index_t kKPerXdl
Definition: default_2d_epilogue.hpp:66
remove_cvref_t< ADataType_ > ADataType
Definition: default_2d_epilogue.hpp:56
static constexpr index_t kMPerXdl
Definition: default_2d_epilogue.hpp:64
static constexpr index_t NumDTensor
Definition: default_2d_epilogue.hpp:69
remove_cvref_t< BDataType_ > BDataType
Definition: default_2d_epilogue.hpp:57
remove_cvref_t< DsDataType_ > DsDataType
Definition: default_2d_epilogue.hpp:59
Definition: integral_constant.hpp:13