/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/pooling/pipeline/pool_problem.hpp Source File

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/pooling/pipeline/pool_problem.hpp Source File#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/ops/pooling/pipeline/pool_problem.hpp Source File
pool_problem.hpp
Go to the documentation of this file.
1 // SPDX-License-Identifier: MIT
2 // Copyright (c) 2025, Advanced Micro Devices, Inc. All rights reserved.
3 
4 #pragma once
5 
6 #include "ck_tile/core.hpp"
7 
8 namespace ck_tile {
9 
10 template <typename InDataType_,
11  typename OutDataType_,
12  typename ComputeDataType_,
13  typename IndexDataType_,
14  typename ReduceOp_,
15  bool OutputIndex_,
16  bool PropagateNan_,
17  typename BlockShape_>
19 {
25  using ReduceOp = ReduceOp_;
28 
29  static constexpr bool kNeedCrossLaneSync = BlockShape::ThreadPerWarp_N > 1;
30  static constexpr bool kNeedCrossWarpSync = BlockShape::WarpPerBlock_N > 1;
31 };
32 
33 } // namespace ck_tile
Definition: cluster_descriptor.hpp:13
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition: type_traits.hpp:21
Definition: pool_problem.hpp:19
remove_cvref_t< ComputeDataType_ > ComputeDataType
Definition: pool_problem.hpp:22
remove_cvref_t< InDataType_ > InDataType
Definition: pool_problem.hpp:20
static constexpr bool kNeedCrossLaneSync
Definition: pool_problem.hpp:29
remove_cvref_t< OutDataType_ > OutDataType
Definition: pool_problem.hpp:21
remove_cvref_t< BlockShape_ > BlockShape
Definition: pool_problem.hpp:24
ReduceOp_ ReduceOp
Definition: pool_problem.hpp:25
static constexpr bool kNeedCrossWarpSync
Definition: pool_problem.hpp:30
remove_cvref_t< IndexDataType_ > IndexDataType
Definition: pool_problem.hpp:23
Definition: integral_constant.hpp:13