/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.
276 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
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: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:236
remove_cvref_t< AElementWise_ > AElementWise
Definition: gemm_pipeline_problem.hpp:242
remove_cvref_t< BlockGemmShape_ > BlockGemmShape
Definition: gemm_pipeline_problem.hpp:247
remove_cvref_t< EDataType_ > CDataType
Definition: gemm_pipeline_problem.hpp:241
remove_cvref_t< typename Traits::BsLayout > BsLayout
Definition: gemm_pipeline_problem.hpp:250
static constexpr bool kPadN
Definition: gemm_pipeline_problem.hpp:289
static constexpr bool BLayoutIsTuple
Definition: gemm_pipeline_problem.hpp:258
static constexpr index_t VectorSizeB
Definition: gemm_pipeline_problem.hpp:297
static constexpr auto TailNum
Definition: gemm_pipeline_problem.hpp:300
remove_cvref_t< AsDataType_ > AsDataType
Definition: gemm_pipeline_problem.hpp:239
remove_cvref_t< BElementWise_ > BElementWise
Definition: gemm_pipeline_problem.hpp:243
static constexpr index_t kBlockSize
Definition: gemm_pipeline_problem.hpp:286
static constexpr auto HasHotLoop
Definition: gemm_pipeline_problem.hpp:299
std::conditional_t< BDataTypeIsTuple, remove_cvref_t< BsDataType >, remove_cvref_t< tuple< BsDataType > >> BsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:274
static constexpr bool BDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:255
std::conditional_t< BLayoutIsTuple, remove_cvref_t< BsLayout >, remove_cvref_t< tuple< BsLayout > >> BsLayoutTuple
Definition: gemm_pipeline_problem.hpp:266
static constexpr index_t VectorLoadSize
Definition: gemm_pipeline_problem.hpp:301
remove_cvref_t< typename Traits::AsLayout > AsLayout
Definition: gemm_pipeline_problem.hpp:249
static constexpr bool ADataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:254
static constexpr bool kPadK
Definition: gemm_pipeline_problem.hpp:290
static constexpr index_t VectorSizeA
Definition: gemm_pipeline_problem.hpp:296
remove_cvref_t< Traits_ > Traits
Definition: gemm_pipeline_problem.hpp:237
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsDataTypeTuple > > ADataType
Definition: gemm_pipeline_problem.hpp:277
static constexpr bool UseStructuredSparsity
Definition: gemm_pipeline_problem.hpp:284
remove_cvref_t< BsDataType_ > BsDataType
Definition: gemm_pipeline_problem.hpp:240
static CK_TILE_HOST const std::string GetName()
Definition: gemm_pipeline_problem.hpp:302
static constexpr bool ALayoutIsTuple
Definition: gemm_pipeline_problem.hpp:257
remove_cvref_t< std::tuple_element_t< number< 0 >{}, ComputeDataTypeTuple > > ComputeDataType
Definition: gemm_pipeline_problem.hpp:276
static constexpr bool TransposeC
Definition: gemm_pipeline_problem.hpp:282
static constexpr bool kPadM
Definition: gemm_pipeline_problem.hpp:288
static constexpr bool ComputeDataTypeIsTuple
Definition: gemm_pipeline_problem.hpp:253
remove_cvref_t< typename Traits::CLayout > CLayout
Definition: gemm_pipeline_problem.hpp:251
static constexpr index_t NumWaveGroups
Definition: gemm_pipeline_problem.hpp:283
static constexpr auto Scheduler
Definition: gemm_pipeline_problem.hpp:293
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsDataTypeTuple > > BDataType
Definition: gemm_pipeline_problem.hpp:279
static constexpr bool DoubleSmemBuffer
Definition: gemm_pipeline_problem.hpp:292
std::conditional_t< ComputeDataTypeIsTuple, remove_cvref_t< ComputeDataType_ >, remove_cvref_t< tuple< ComputeDataType_ > >> ComputeDataTypeTuple
Definition: gemm_pipeline_problem.hpp:262
remove_cvref_t< std::tuple_element_t< number< 0 >{}, AsLayoutTuple > > ALayout
Definition: gemm_pipeline_problem.hpp:278
std::conditional_t< ALayoutIsTuple, remove_cvref_t< AsLayout >, remove_cvref_t< tuple< AsLayout > >> AsLayoutTuple
Definition: gemm_pipeline_problem.hpp:264
std::conditional_t< ADataTypeIsTuple, remove_cvref_t< AsDataType >, remove_cvref_t< tuple< AsDataType > >> AsDataTypeTuple
Definition: gemm_pipeline_problem.hpp:270
remove_cvref_t< std::tuple_element_t< number< 0 >{}, BsLayoutTuple > > BLayout
Definition: gemm_pipeline_problem.hpp:280
static constexpr bool Preshuffle
Definition: gemm_pipeline_problem.hpp:294
static constexpr bool FixedVectorSize
Definition: gemm_pipeline_problem.hpp:245
Definition: unary_element_wise_operation.hpp:431
Definition: numeric.hpp:81