xref: /aosp_15_r20/external/armnn/src/backends/reference/workloads/FullyConnected.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include "BaseIterator.hpp"
9 #include "Decoders.hpp"
10 #include "Encoders.hpp"
11 #include <armnn/Tensor.hpp>
12 #include <armnn/backends/WorkloadData.hpp>
13 
14 namespace armnn
15 {
16 
17 /// Performs a matrix multiplication and optionally adds a bias.
18 void FullyConnected(const TensorShape& rInputShape,
19                     Decoder<float>& rInputDecoder,
20                     const TensorShape& rOutputShape,
21                     Encoder<float>& rOutputEncoder,
22                     const TensorShape& rWeightsShape,
23                     Decoder<float>& rWeightDecoder,
24                     Decoder<float>* rBiasDecoder,
25                     bool biasEnabled,
26                     unsigned int K,
27                     bool transposeWeights);
28 
29 } //namespace armnn
30