/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/gemm/pipeline/gemm_pipeline_problem.hpp Source File#
gemm_pipeline_problem.hpp
Go to the documentation of this file.
274 using ComputeDataType = remove_cvref_t<std::tuple_element_t<number<0>{}, ComputeDataTypeTuple>>;
Definition: cluster_descriptor.hpp:13
auto concat(const Ts &... xs) -> std::enable_if_t<!AllConvertibleToStringView< Ts... >, std::string >
Definition: concat.hpp:43
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition: type_traits.hpp:21
ck_tile::element_wise::PassThrough PassThrough
Definition: grouped_convolution_utils.hpp:54
typename detail::detector< nonesuch, void, Op, Args... >::value_t is_detected
Definition: type_traits.hpp:67
GemmPipelineScheduler
Definition: gemm_pipeline_ag_bg_cr_scheduler.hpp:14
@ Intrawave
typename conditional< predicate, X, Y >::type conditional_t
Definition: functional.hpp:115
Definition: gemm_pipeline_problem.hpp:324
static constexpr bool kPadN
Definition: gemm_pipeline_problem.hpp:345
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentC()
Definition: gemm_pipeline_problem.hpp:402
static constexpr index_t VectorSizeA
Definition: gemm_pipeline_problem.hpp:424
static constexpr bool UseStructuredSparsity
Definition: gemm_pipeline_problem.hpp:340
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentA()
Definition: gemm_pipeline_problem.hpp:366
static constexpr auto Scheduler
Definition: gemm_pipeline_problem.hpp:350
static CK_TILE_HOST const std::string GetName()
Definition: gemm_pipeline_problem.hpp:356
remove_cvref_t< Traits_ > Traits
Definition: gemm_pipeline_problem.hpp:325
static constexpr bool DoubleSmemBuffer
Definition: gemm_pipeline_problem.hpp:348
static constexpr auto HasHotLoop
Definition: gemm_pipeline_problem.hpp:353
static constexpr index_t NumWaveGroups
Definition: gemm_pipeline_problem.hpp:339
remove_cvref_t< BlockGemmShape_ > BlockGemmShape
Definition: gemm_pipeline_problem.hpp:332
remove_cvref_t< typename Traits::AsLayout > ALayout
Definition: gemm_pipeline_problem.hpp:334
static constexpr index_t VectorLoadSize
Definition: gemm_pipeline_problem.hpp:351
remove_cvref_t< ComputeDataType_ > ComputeDataType
Definition: gemm_pipeline_problem.hpp:330
static constexpr index_t VectorSizeB
Definition: gemm_pipeline_problem.hpp:435
static constexpr auto TailNum
Definition: gemm_pipeline_problem.hpp:354
remove_cvref_t< typename Traits::CLayout > CLayout
Definition: gemm_pipeline_problem.hpp:336
static constexpr bool kPadM
Definition: gemm_pipeline_problem.hpp:344
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentB()
Definition: gemm_pipeline_problem.hpp:384
static constexpr index_t VectorSizeC
Definition: gemm_pipeline_problem.hpp:445
static constexpr bool TransposeC
Definition: gemm_pipeline_problem.hpp:338
static constexpr bool kPadK
Definition: gemm_pipeline_problem.hpp:346
remove_cvref_t< CDataType_ > CDataType
Definition: gemm_pipeline_problem.hpp:329
static constexpr index_t kBlockSize
Definition: gemm_pipeline_problem.hpp:342
remove_cvref_t< BDataType_ > BDataType
Definition: gemm_pipeline_problem.hpp:328
remove_cvref_t< ADataType_ > ADataType
Definition: gemm_pipeline_problem.hpp:327
remove_cvref_t< typename Traits::BsLayout > BLayout
Definition: gemm_pipeline_problem.hpp:335
Definition: gemm_pipeline_problem.hpp:25
remove_cvref_t< BElementWise_ > BElementWise
Definition: gemm_pipeline_problem.hpp:37
static constexpr index_t NumWaveGroups
Definition: gemm_pipeline_problem.hpp:73
static constexpr bool UseStructuredSparsity
Definition: gemm_pipeline_problem.hpp:74
static constexpr bool FixedVectorSize
Definition: gemm_pipeline_problem.hpp:32
remove_cvref_t< BlockGemmShape_ > BlockGemmShape
Definition: gemm_pipeline_problem.hpp:34
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentB()
Definition: gemm_pipeline_problem.hpp:117
static constexpr bool ComputeDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:43
static constexpr bool kPadK
Definition: gemm_pipeline_problem.hpp:80
static constexpr index_t VectorSizeC
Definition: gemm_pipeline_problem.hpp:186
remove_cvref_t< BsDataType_ > BsDataType
Definition: gemm_pipeline_problem.hpp:29
static constexpr bool Preshuffle
Definition: gemm_pipeline_problem.hpp:87
static constexpr auto Scheduler
Definition: gemm_pipeline_problem.hpp:83
std::conditional_t< BLayoutIsTuple, remove_cvref_t< BsLayout >, remove_cvref_t< tuple< BsLayout > >> BsLayoutTuple
Definition: gemm_pipeline_problem.hpp:56
remove_cvref_t< std::tuple_element_t< number< 0 >{}, ComputeDataTypeTuple > > ComputeDataType
Definition: gemm_pipeline_problem.hpp:66
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsLayoutTuple > > ALayout
Definition: gemm_pipeline_problem.hpp:68
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsDataTypeTuple > > BDataType
Definition: gemm_pipeline_problem.hpp:69
remove_cvref_t< AElementWise_ > AElementWise
Definition: gemm_pipeline_problem.hpp:36
static constexpr bool ALayoutIsTuple
Definition: gemm_pipeline_problem.hpp:47
std::conditional_t< ALayoutIsTuple, remove_cvref_t< AsLayout >, remove_cvref_t< tuple< AsLayout > >> AsLayoutTuple
Definition: gemm_pipeline_problem.hpp:54
static constexpr index_t kBlockSize
Definition: gemm_pipeline_problem.hpp:76
static constexpr bool kPadM
Definition: gemm_pipeline_problem.hpp:78
static constexpr index_t VectorSizeB
Definition: gemm_pipeline_problem.hpp:172
remove_cvref_t< typename Traits::AsLayout > AsLayout
Definition: gemm_pipeline_problem.hpp:39
static constexpr bool TransposeC
Definition: gemm_pipeline_problem.hpp:72
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsDataTypeTuple > > ADataType
Definition: gemm_pipeline_problem.hpp:67
static constexpr bool DoubleSmemBuffer
Definition: gemm_pipeline_problem.hpp:82
static constexpr bool BDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:45
std::conditional_t< ADataTypeIsTuple, remove_cvref_t< AsDataType >, remove_cvref_t< tuple< AsDataType > >> AsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:60
static constexpr bool BLayoutIsTuple
Definition: gemm_pipeline_problem.hpp:48
std::conditional_t< BDataTypeIsTuple, remove_cvref_t< BsDataType >, remove_cvref_t< tuple< BsDataType > >> BsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:64
remove_cvref_t< AsDataType_ > AsDataType
Definition: gemm_pipeline_problem.hpp:28
remove_cvref_t< typename Traits::CLayout > CLayout
Definition: gemm_pipeline_problem.hpp:41
std::conditional_t< ComputeDataTypeIsTuple, remove_cvref_t< ComputeDataType_ >, remove_cvref_t< tuple< ComputeDataType_ > >> ComputeDataTypeTuple
Definition: gemm_pipeline_problem.hpp:52
static CK_TILE_HOST const std::string GetName()
Definition: gemm_pipeline_problem.hpp:89
remove_cvref_t< typename Traits::BsLayout > BsLayout
Definition: gemm_pipeline_problem.hpp:40
remove_cvref_t< EDataType_ > CDataType
Definition: gemm_pipeline_problem.hpp:30
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentA()
Definition: gemm_pipeline_problem.hpp:99
static constexpr index_t VectorSizeA
Definition: gemm_pipeline_problem.hpp:157
remove_cvref_t< Traits_ > Traits
Definition: gemm_pipeline_problem.hpp:26
static constexpr bool kPadN
Definition: gemm_pipeline_problem.hpp:79
static constexpr bool ADataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:44
static constexpr index_t VectorLoadSize
Definition: gemm_pipeline_problem.hpp:84
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsLayoutTuple > > BLayout
Definition: gemm_pipeline_problem.hpp:70
static constexpr CK_TILE_HOST_DEVICE auto GetAlignmentC()
Definition: gemm_pipeline_problem.hpp:135
Definition: gemm_pipeline_problem.hpp:234
static constexpr bool FixedVectorSize
Definition: gemm_pipeline_problem.hpp:243
static constexpr bool kPadK
Definition: gemm_pipeline_problem.hpp:288
static CK_TILE_HOST const std::string GetName()
Definition: gemm_pipeline_problem.hpp:298
remove_cvref_t< AsDataType_ > AsDataType
Definition: gemm_pipeline_problem.hpp:237
static constexpr bool DoubleSmemBuffer
Definition: gemm_pipeline_problem.hpp:290
std::conditional_t< ComputeDataTypeIsTuple, remove_cvref_t< ComputeDataType_ >, remove_cvref_t< tuple< ComputeDataType_ > >> ComputeDataTypeTuple
Definition: gemm_pipeline_problem.hpp:260
remove_cvref_t< typename Traits::AsLayout > AsLayout
Definition: gemm_pipeline_problem.hpp:247
static constexpr bool TransposeC
Definition: gemm_pipeline_problem.hpp:280
static constexpr index_t kBlockSize
Definition: gemm_pipeline_problem.hpp:284
std::conditional_t< BLayoutIsTuple, remove_cvref_t< BsLayout >, remove_cvref_t< tuple< BsLayout > >> BsLayoutTuple
Definition: gemm_pipeline_problem.hpp:264
remove_cvref_t< AElementWise_ > AElementWise
Definition: gemm_pipeline_problem.hpp:240
static constexpr bool ADataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:252
static constexpr index_t VectorSizeA
Definition: gemm_pipeline_problem.hpp:294
remove_cvref_t< Traits_ > Traits
Definition: gemm_pipeline_problem.hpp:235
std::conditional_t< ALayoutIsTuple, remove_cvref_t< AsLayout >, remove_cvref_t< tuple< AsLayout > >> AsLayoutTuple
Definition: gemm_pipeline_problem.hpp:262
std::conditional_t< BDataTypeIsTuple, remove_cvref_t< BsDataType >, remove_cvref_t< tuple< BsDataType > >> BsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:272
static constexpr bool kPadM
Definition: gemm_pipeline_problem.hpp:286
remove_cvref_t< typename Traits::CLayout > CLayout
Definition: gemm_pipeline_problem.hpp:249
static constexpr bool BLayoutIsTuple
Definition: gemm_pipeline_problem.hpp:256
static constexpr auto Scheduler
Definition: gemm_pipeline_problem.hpp:291
remove_cvref_t< typename Traits::BsLayout > BsLayout
Definition: gemm_pipeline_problem.hpp:248
static constexpr bool Preshuffle
Definition: gemm_pipeline_problem.hpp:292
std::conditional_t< ADataTypeIsTuple, remove_cvref_t< AsDataType >, remove_cvref_t< tuple< AsDataType > >> AsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:268
static constexpr index_t NumWaveGroups
Definition: gemm_pipeline_problem.hpp:281
static constexpr bool kPadN
Definition: gemm_pipeline_problem.hpp:287
remove_cvref_t< BlockGemmShape_ > BlockGemmShape
Definition: gemm_pipeline_problem.hpp:245
static constexpr bool UseStructuredSparsity
Definition: gemm_pipeline_problem.hpp:282
static constexpr index_t VectorLoadSize
Definition: gemm_pipeline_problem.hpp:297
remove_cvref_t< EDataType_ > CDataType
Definition: gemm_pipeline_problem.hpp:239
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsLayoutTuple > > BLayout
Definition: gemm_pipeline_problem.hpp:278
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsLayoutTuple > > ALayout
Definition: gemm_pipeline_problem.hpp:276
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsDataTypeTuple > > BDataType
Definition: gemm_pipeline_problem.hpp:277
static constexpr bool ComputeDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:251
remove_cvref_t< BElementWise_ > BElementWise
Definition: gemm_pipeline_problem.hpp:241
static constexpr bool ALayoutIsTuple
Definition: gemm_pipeline_problem.hpp:255
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsDataTypeTuple > > ADataType
Definition: gemm_pipeline_problem.hpp:275
static constexpr index_t VectorSizeB
Definition: gemm_pipeline_problem.hpp:295
remove_cvref_t< BsDataType_ > BsDataType
Definition: gemm_pipeline_problem.hpp:238
static constexpr bool BDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:253
remove_cvref_t< std::tuple_element_t< number< 0 >{}, ComputeDataTypeTuple > > ComputeDataType
Definition: gemm_pipeline_problem.hpp:274
Definition: numeric.hpp:81