blob: 2c3885fb547a32812ea035c366a37c331ecdf0c7 [file] [log] [blame]
Laurent Carlier749294b2020-06-01 09:03:17 +01001//
telsoa014fcda012018-03-09 14:13:49 +00002// Copyright © 2017 Arm Ltd. All rights reserved.
David Beckecb56cd2018-09-05 12:52:57 +01003// SPDX-License-Identifier: MIT
telsoa014fcda012018-03-09 14:13:49 +00004//
5
6#pragma once
7
Francis Murtagh43aec582019-05-27 12:14:10 +01008#include "BaseIterator.hpp"
9#include "Decoders.hpp"
10#include "Encoders.hpp"
telsoa014fcda012018-03-09 14:13:49 +000011#include <armnn/Tensor.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000012#include <armnn/backends/WorkloadData.hpp>
telsoa014fcda012018-03-09 14:13:49 +000013
14namespace armnn
15{
16
telsoa01c577f2c2018-08-31 09:22:23 +010017/// Performs a matrix multiplication and optionally adds a bias.
Francis Murtagh43aec582019-05-27 12:14:10 +010018void FullyConnected(const TensorShape& rInputShape,
19 Decoder<float>& rInputDecoder,
20 const TensorShape& rOutputShape,
21 Encoder<float>& rOutputEncoder,
Finn Williamsb9dcfe62020-09-17 15:58:31 +010022 const TensorShape& rWeightsShape,
Francis Murtagh43aec582019-05-27 12:14:10 +010023 Decoder<float>& rWeightDecoder,
Matthew Bentham18bf43d2021-07-07 09:08:48 +010024 Decoder<float>* rBiasDecoder,
Francis Murtagh43aec582019-05-27 12:14:10 +010025 bool biasEnabled,
26 unsigned int K,
27 bool transposeWeights);
telsoa014fcda012018-03-09 14:13:49 +000028
29} //namespace armnn