device_conv_fwd_bias_activation_add.hpp Source File

device_conv_fwd_bias_activation_add.hpp Source File#

Composable Kernel: device_conv_fwd_bias_activation_add.hpp Source File
device_conv_fwd_bias_activation_add.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#include <iostream>
8
10
11namespace ck {
12namespace tensor_operation {
13namespace device {
14
15template <typename InElementwiseOperation,
16 typename WeiElementwiseOperation,
17 typename OutElementwiseOperation>
19{
20 virtual std::unique_ptr<BaseArgument>
21 MakeArgumentPointer(const void* p_in,
22 const void* p_wei,
23 void* p_out,
24 const void* p_bias,
25 const void* p_resi,
29 std::vector<ck::index_t> input_spatial_lengths,
30 std::vector<ck::index_t> filter_spatial_lengths,
31 std::vector<ck::index_t> output_spatial_lengths,
32 std::vector<ck::index_t> conv_filter_strides,
33 std::vector<ck::index_t> conv_filter_dilations,
34 std::vector<ck::index_t> input_left_pads,
35 std::vector<ck::index_t> input_right_pads,
36 InElementwiseOperation in_element_op,
37 WeiElementwiseOperation wei_element_op,
38 OutElementwiseOperation out_element_op) = 0;
39
40 virtual std::unique_ptr<BaseInvoker> MakeInvokerPointer() = 0;
41};
42
43template <typename InElementwiseOperation,
44 typename WeiElementwiseOperation,
45 typename OutElementwiseOperation>
47 std::unique_ptr<DeviceConvFwdBiasActivationAdd<InElementwiseOperation,
48 WeiElementwiseOperation,
49 OutElementwiseOperation>>;
50
51} // namespace device
52} // namespace tensor_operation
53} // namespace ck
Definition convolution_backward_data_specialization.hpp:8
std::unique_ptr< DeviceConvFwdBiasActivationAdd< InElementwiseOperation, WeiElementwiseOperation, OutElementwiseOperation > > DeviceConvFwdBiasActivationAddPtr
Definition device_conv_fwd_bias_activation_add.hpp:46
Definition convolution_backward_data_specialization.hpp:7
Definition ck.hpp:268
int32_t index_t
Definition ck.hpp:299
Definition device_conv_fwd_bias_activation_add.hpp:19
virtual std::unique_ptr< BaseArgument > MakeArgumentPointer(const void *p_in, const void *p_wei, void *p_out, const void *p_bias, const void *p_resi, ck::index_t N, ck::index_t K, ck::index_t C, std::vector< ck::index_t > input_spatial_lengths, std::vector< ck::index_t > filter_spatial_lengths, std::vector< ck::index_t > output_spatial_lengths, std::vector< ck::index_t > conv_filter_strides, std::vector< ck::index_t > conv_filter_dilations, std::vector< ck::index_t > input_left_pads, std::vector< ck::index_t > input_right_pads, InElementwiseOperation in_element_op, WeiElementwiseOperation wei_element_op, OutElementwiseOperation out_element_op)=0
virtual std::unique_ptr< BaseInvoker > MakeInvokerPointer()=0