aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/workloads/ConvImpl.hpp
diff options
context:
space:
mode:
authorMike Kelly <mike.kelly@arm.com>2019-05-22 17:21:49 +0100
committerRuomei Yan <ruomei.yan@arm.com>2019-05-23 09:23:19 +0000
commit9b3983299f882c8d84c5abd0d40ca75a801ea7f2 (patch)
tree40866201c7a65b5c4d10034b5f03a35070cc961f /src/backends/reference/workloads/ConvImpl.hpp
parent31b2e134c392617de7a41c56d460ac494eab0140 (diff)
downloadarmnn-9b3983299f882c8d84c5abd0d40ca75a801ea7f2.tar.gz
IVGCVSW-3025: Refactor reference Convolution2d workload
* Refactored RefConvolution2dWorkload to support all DataTypes through Encoders and Decoders. * Added Convolute function to ConvImpl that uses Encoders and Decoders to support all DataTypes. * Deleted RefConvolution2dFloat32Workload and RefConvolution2dUint8Workload. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ic5ef0f499d08b948fa65fdee54b5f681fd0b1c05
Diffstat (limited to 'src/backends/reference/workloads/ConvImpl.hpp')
-rw-r--r--src/backends/reference/workloads/ConvImpl.hpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/backends/reference/workloads/ConvImpl.hpp b/src/backends/reference/workloads/ConvImpl.hpp
index 23b402aa77..3551ba8f90 100644
--- a/src/backends/reference/workloads/ConvImpl.hpp
+++ b/src/backends/reference/workloads/ConvImpl.hpp
@@ -7,6 +7,9 @@
#include "RefWorkloadUtils.hpp"
#include "TensorBufferArrayView.hpp"
+#include "BaseIterator.hpp"
+#include "Decoders.hpp"
+#include "Encoders.hpp"
#include <armnn/Tensor.hpp>
@@ -224,4 +227,20 @@ static void ConvImpl(ConvData data,
}
}
+void Convolve(const TensorShape& rInputShape,
+ Decoder<float>& rInputDecoder,
+ const TensorShape& rOutputShape,
+ Encoder<float>& rOutputEncoder,
+ const TensorShape& rFilterShape,
+ Decoder<float>& rFilterDecoder,
+ bool biasEnabled,
+ Decoder<float>* pBiasDecoder,
+ DataLayout dataLayout,
+ unsigned int paddingTop,
+ unsigned int paddingLeft,
+ unsigned int xStride,
+ unsigned int yStride,
+ unsigned int xDilation,
+ unsigned int yDilation,
+ bool depthwise = false);
} //namespace armnn