block_gemm_areg_breg_creg_v2_custom_policy.hpp Source File

block_gemm_areg_breg_creg_v2_custom_policy.hpp Source File#

Composable Kernel: block_gemm_areg_breg_creg_v2_custom_policy.hpp Source File
block_gemm_areg_breg_creg_v2_custom_policy.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2// Copyright (c) 2018-2024, Advanced Micro Devices, Inc. All rights reserved.
3
4#pragma once
5
6#include "ck_tile/core.hpp"
7
8namespace ck_tile {
9
10enum struct GemmLoopOrder
11{
14};
15
16template <typename AType_,
17 typename BType_,
18 typename CType_,
19 typename BlockWarps_,
20 typename WarpGemm_,
21 GemmLoopOrder BlockGemmLoopOrder_ = GemmLoopOrder::KMN>
23{
27
29
30 static constexpr index_t kMWarps = BlockWarps::at(number<0>{});
31 static constexpr index_t kNWarps = BlockWarps::at(number<1>{});
32 static constexpr index_t kKWarps = BlockWarps::at(number<2>{});
33
35
36 static constexpr auto BlockGemmLoopOrder = BlockGemmLoopOrder_;
37
38 template <typename Problem>
40 {
42 }
43};
44
45} // namespace ck_tile
#define CK_TILE_HOST_DEVICE
Definition config.hpp:42
Definition tile/core/algorithm/cluster_descriptor.hpp:13
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition type_traits.hpp:21
constant< v > number
Definition tile/core/numeric/integral_constant.hpp:37
int32_t index_t
Definition integer.hpp:9
CK_TILE_HOST_DEVICE constexpr auto make_tuple(Xs &&... xs)
Definition tile/core/container/tuple.hpp:360
GemmLoopOrder
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:11
@ KMN
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:12
@ MNK
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:13
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:23
static constexpr auto BlockGemmLoopOrder
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:36
remove_cvref_t< BType_ > BType
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:25
remove_cvref_t< BlockWarps_ > BlockWarps
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:28
static constexpr index_t kNWarps
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:31
remove_cvref_t< WarpGemm_ > WarpGemm
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:34
remove_cvref_t< CType_ > CType
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:26
static constexpr index_t kMWarps
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:30
remove_cvref_t< AType_ > AType
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:24
static constexpr index_t kKWarps
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:32
static CK_TILE_HOST_DEVICE constexpr auto GetWarpGemmMWarpNWarp()
Definition block_gemm_areg_breg_creg_v2_custom_policy.hpp:39