aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference
diff options
context:
space:
mode:
authorarovir01 <Aron.Virginas-Tar@arm.com>2018-10-04 10:46:04 +0100
committerMatthew Bentham <matthew.bentham@arm.com>2018-10-10 16:16:58 +0100
commit4424b0a12b88bbefecd6b17b5baf174e7d8e1fe5 (patch)
tree7d606f9f8f02247e21b0407848ff7af8f77ae4a5 /src/backends/reference
parente97c6e0b88fd0a17991c1be5fc66e466e29e5b8d (diff)
downloadarmnn-4424b0a12b88bbefecd6b17b5baf174e7d8e1fe5.tar.gz
IVGCVSW-1963: Add implementation classes for Cl, Neon and Ref backends
Change-Id: Ibb2efaf8b001a64a3f35eab2220990dc39889780
Diffstat (limited to 'src/backends/reference')
-rw-r--r--src/backends/reference/CMakeLists.txt2
-rw-r--r--src/backends/reference/RefBackend.cpp29
-rw-r--r--src/backends/reference/RefBackend.hpp33
-rw-r--r--src/backends/reference/RefLayerSupport.hpp5
-rw-r--r--src/backends/reference/backend.mk1
5 files changed, 70 insertions, 0 deletions
diff --git a/src/backends/reference/CMakeLists.txt b/src/backends/reference/CMakeLists.txt
index 526baaa1a8..9810cf86e2 100644
--- a/src/backends/reference/CMakeLists.txt
+++ b/src/backends/reference/CMakeLists.txt
@@ -4,6 +4,8 @@
#
list(APPEND armnnRefBackend_sources
+ RefBackend.cpp
+ RefBackend.hpp
RefLayerSupport.cpp
RefLayerSupport.hpp
RefWorkloadFactory.cpp
diff --git a/src/backends/reference/RefBackend.cpp b/src/backends/reference/RefBackend.cpp
new file mode 100644
index 0000000000..1799abfc33
--- /dev/null
+++ b/src/backends/reference/RefBackend.cpp
@@ -0,0 +1,29 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#include "RefBackend.hpp"
+
+namespace armnn
+{
+
+const std::string RefBackend::s_Id = "arm_reference";
+
+const std::string& RefBackend::GetId() const
+{
+ return s_Id;
+}
+
+const ILayerSupport& RefBackend::GetLayerSupport() const
+{
+ return m_LayerSupport;
+}
+
+std::unique_ptr<IWorkloadFactory> RefBackend::CreateWorkloadFactory() const
+{
+ // TODO implement
+ return nullptr;
+}
+
+} // namespace armnn \ No newline at end of file
diff --git a/src/backends/reference/RefBackend.hpp b/src/backends/reference/RefBackend.hpp
new file mode 100644
index 0000000000..c3797158a6
--- /dev/null
+++ b/src/backends/reference/RefBackend.hpp
@@ -0,0 +1,33 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+#pragma once
+
+#include "backends/IBackendInternal.hpp"
+
+#include "RefLayerSupport.hpp"
+
+namespace armnn
+{
+
+class RefBackend : public IBackendInternal
+{
+public:
+ RefBackend() = default;
+ ~RefBackend() = default;
+
+ const std::string& GetId() const override;
+
+ const ILayerSupport& GetLayerSupport() const override;
+
+ std::unique_ptr<IWorkloadFactory> CreateWorkloadFactory() const override;
+
+private:
+ static const std::string s_Id;
+
+ // TODO initialize
+ RefLayerSupport m_LayerSupport;
+};
+
+} // namespace armnn \ No newline at end of file
diff --git a/src/backends/reference/RefLayerSupport.hpp b/src/backends/reference/RefLayerSupport.hpp
index d29e95645f..e819b6665a 100644
--- a/src/backends/reference/RefLayerSupport.hpp
+++ b/src/backends/reference/RefLayerSupport.hpp
@@ -15,6 +15,11 @@
namespace armnn
{
+class RefLayerSupport : public ILayerSupport
+{
+ // TODO implement
+};
+
bool IsActivationSupportedRef(const TensorInfo& input,
const TensorInfo& output,
const ActivationDescriptor& descriptor,
diff --git a/src/backends/reference/backend.mk b/src/backends/reference/backend.mk
index e5345c07d5..365faa684c 100644
--- a/src/backends/reference/backend.mk
+++ b/src/backends/reference/backend.mk
@@ -8,6 +8,7 @@
# file in the root of ArmNN
BACKEND_SOURCES := \
+ RefBackend.cpp \
RefLayerSupport.cpp \
RefWorkloadFactory.cpp \
workloads/Activation.cpp \