/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-6.4.3/include/ck/tensor_operation/gpu/device/device_max_pool_bwd.hpp Source File

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-6.4.3/include/ck/tensor_operation/gpu/device/device_max_pool_bwd.hpp Source File#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-6.4.3/include/ck/tensor_operation/gpu/device/device_max_pool_bwd.hpp Source File
device_max_pool_bwd.hpp
Go to the documentation of this file.
1 // SPDX-License-Identifier: MIT
2 // Copyright (c) 2018-2023, Advanced Micro Devices, Inc. All rights reserved.
3 
4 #pragma once
5 
6 #include <vector>
7 
9 
10 namespace ck {
11 namespace tensor_operation {
12 namespace device {
13 
14 // For pooling which used indexable operation, such as MaxPool, MinPool...etc
15 template <typename DOutDataType, typename IndexDataType, typename DInDataType>
17 {
18  virtual std::unique_ptr<BaseArgument>
19  MakeArgumentPointer(const void* p_dout,
20  const void* p_indices,
21  void* p_din,
22  index_t dout_length,
23  index_t din_length,
24  std::vector<ck::index_t> window_lengths,
25  std::vector<ck::index_t> window_strides,
26  std::vector<ck::index_t> window_dilations) = 0;
27 
28  virtual std::unique_ptr<BaseInvoker> MakeInvokerPointer() = 0;
29 };
30 
31 } // namespace device
32 } // namespace tensor_operation
33 } // namespace ck
Definition: ck.hpp:264
int32_t index_t
Definition: ck.hpp:289
Definition: device_base.hpp:76
Definition: device_max_pool_bwd.hpp:17
virtual std::unique_ptr< BaseArgument > MakeArgumentPointer(const void *p_dout, const void *p_indices, void *p_din, index_t dout_length, index_t din_length, std::vector< ck::index_t > window_lengths, std::vector< ck::index_t > window_strides, std::vector< ck::index_t > window_dilations)=0
virtual std::unique_ptr< BaseInvoker > MakeInvokerPointer()=0