batched_transpose_common_policy.hpp Source File

batched_transpose_common_policy.hpp Source File#

Composable Kernel: batched_transpose_common_policy.hpp Source File
batched_transpose_common_policy.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2// Copyright (c) Advanced Micro Devices, Inc. All rights reserved.
3
4#pragma once
5
6#include "ck_tile/core.hpp"
7
8namespace ck_tile {
9
11{
12 CK_TILE_DEVICE static constexpr auto TileAccessPattern =
14
15 template <typename Problem>
16 CK_TILE_DEVICE static constexpr auto MakeInputDistribution()
17 {
18 constexpr index_t kBlockSize = Problem::kBlockSize;
19 constexpr index_t kLeadDimPerBlock = Problem::kNPerBlock;
20 constexpr index_t kSecondDimPerBlock = Problem::kMPerBlock;
21
22 constexpr index_t kVectorSize = Problem::VectorSizeInput;
23 static_assert((kLeadDimPerBlock * kVectorSize) % kBlockSize == 0, "");
24 using TileEncodingPattern = tile_distribution_encoding_pattern_2d<kBlockSize,
25 kSecondDimPerBlock,
26 kLeadDimPerBlock,
27 kVectorSize,
29 return TileEncodingPattern::make_2d_static_tile_distribution();
30 }
31};
32
33} // namespace ck_tile
#define CK_TILE_DEVICE
Definition config.hpp:41
Definition tile/core/algorithm/cluster_descriptor.hpp:13
@ thread_raked
Thread raked pattern.
Definition static_encoding_pattern.hpp:94
int32_t index_t
Definition integer.hpp:9
Definition batched_transpose_common_policy.hpp:11
static CK_TILE_DEVICE constexpr auto TileAccessPattern
Definition batched_transpose_common_policy.hpp:12
static CK_TILE_DEVICE constexpr auto MakeInputDistribution()
Definition batched_transpose_common_policy.hpp:16
Class creating 2D static tile distribution with different load/store patterns.
Definition static_encoding_pattern.hpp:130