aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp
diff options
context:
space:
mode:
authorKeith Davis <keith.davis@arm.com>2019-06-14 17:33:22 +0100
committerKeith Davis <keith.davis@arm.com>2019-06-19 14:43:26 +0100
commita57eccbe313557b9eafec40b39bac3115d9b930d (patch)
tree2522157537f46fa2e54c0405d9e9e60f5f0a9ae1 /src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp
parentab9e52563f624d9782b97400f643d2632cc8d770 (diff)
downloadarmnn-a57eccbe313557b9eafec40b39bac3115d9b930d.tar.gz
IVGCVSW-3231 Add reference workload support for SpaceToDepth
* Added reference workload for SpaceToDepth * Added unit tests for float32 & uint8 * Minor sort refactoring to RefWorkloads.hpp to alphabetical order Change-Id: I2e01f8101650e2aae102a8a32bc0064f067141ab Signed-off-by: Keith Davis <keith.davis@arm.com>
Diffstat (limited to 'src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp')
-rw-r--r--src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp b/src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp
new file mode 100644
index 0000000000..1b12272506
--- /dev/null
+++ b/src/backends/reference/workloads/RefSpaceToDepthWorkload.cpp
@@ -0,0 +1,28 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#include "RefSpaceToDepthWorkload.hpp"
+#include "SpaceToDepth.hpp"
+
+#include "RefWorkloadUtils.hpp"
+#include <ResolveType.hpp>
+
+namespace armnn
+{
+
+void RefSpaceToDepthWorkload::Execute() const
+{
+ ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefSpaceToDepthWorkload_Execute");
+
+ const TensorInfo& inputInfo = GetTensorInfo(m_Data.m_Inputs[0]);
+ std::unique_ptr<Decoder<float>> decoder = MakeDecoder<float>(inputInfo, m_Data.m_Inputs[0]->Map());
+
+ const TensorInfo& outputInfo = GetTensorInfo(m_Data.m_Outputs[0]);
+ std::unique_ptr<Encoder<float>> encoder = MakeEncoder<float>(outputInfo, m_Data.m_Outputs[0]->Map());
+
+ SpaceToDepth(inputInfo, outputInfo, m_Data.m_Parameters, *decoder, *encoder);
+}
+
+} //namespace armnn