device_gemm.hpp Source File

device_gemm.hpp Source File#

Composable Kernel: device_gemm.hpp Source File
device_gemm.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
7
8namespace ck {
9namespace tensor_operation {
10namespace device {
11
12template <typename ALayout,
13 typename BLayout,
14 typename CLayout,
15 typename ADataType,
16 typename BDataType,
17 typename CDataType,
18 typename AElementwiseOperation,
19 typename BElementwiseOperation,
20 typename CElementwiseOperation>
21struct DeviceGemm : public BaseOperator
22{
23 virtual std::unique_ptr<BaseArgument>
24 MakeArgumentPointer(const void* p_a,
25 const void* p_b,
26 void* p_c,
30 ck::index_t StrideA,
31 ck::index_t StrideB,
32 ck::index_t StrideC,
33 AElementwiseOperation a_element_op,
34 BElementwiseOperation b_element_op,
35 CElementwiseOperation c_element_op) = 0;
36
37 virtual std::unique_ptr<BaseInvoker> MakeInvokerPointer() = 0;
38};
39
40} // namespace device
41} // namespace tensor_operation
42} // namespace ck
Definition convolution_backward_data_specialization.hpp:8
Definition convolution_backward_data_specialization.hpp:7
Definition ck.hpp:268
int32_t index_t
Definition ck.hpp:299
Definition device_gemm.hpp:22
virtual std::unique_ptr< BaseArgument > MakeArgumentPointer(const void *p_a, const void *p_b, void *p_c, ck::index_t M, ck::index_t N, ck::index_t K, ck::index_t StrideA, ck::index_t StrideB, ck::index_t StrideC, AElementwiseOperation a_element_op, BElementwiseOperation b_element_op, CElementwiseOperation c_element_op)=0
virtual std::unique_ptr< BaseInvoker > MakeInvokerPointer()=0