diff options
Diffstat (limited to 'src/backends/cl')
-rw-r--r-- | src/backends/cl/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/backends/cl/ClBackend.cpp | 29 | ||||
-rw-r--r-- | src/backends/cl/ClBackend.hpp | 33 | ||||
-rw-r--r-- | src/backends/cl/ClLayerSupport.hpp | 6 | ||||
-rw-r--r-- | src/backends/cl/backend.mk | 1 |
5 files changed, 71 insertions, 0 deletions
diff --git a/src/backends/cl/CMakeLists.txt b/src/backends/cl/CMakeLists.txt index 80ca0acc08..a7ce893f20 100644 --- a/src/backends/cl/CMakeLists.txt +++ b/src/backends/cl/CMakeLists.txt @@ -4,6 +4,8 @@ # list(APPEND armnnClBackend_sources + ClBackend.cpp + ClBackend.hpp ClContextControl.cpp ClContextControl.hpp ClLayerSupport.cpp diff --git a/src/backends/cl/ClBackend.cpp b/src/backends/cl/ClBackend.cpp new file mode 100644 index 0000000000..5de9d31234 --- /dev/null +++ b/src/backends/cl/ClBackend.cpp @@ -0,0 +1,29 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#include "ClBackend.hpp" + +namespace armnn +{ + +const std::string ClBackend::s_Id = "arm_compute_cl"; + +const std::string& ClBackend::GetId() const +{ + return s_Id; +} + +const ILayerSupport& ClBackend::GetLayerSupport() const +{ + return m_LayerSupport; +} + +std::unique_ptr<IWorkloadFactory> ClBackend::CreateWorkloadFactory() const +{ + // TODO implement + return nullptr; +} + +} // namespace armnn
\ No newline at end of file diff --git a/src/backends/cl/ClBackend.hpp b/src/backends/cl/ClBackend.hpp new file mode 100644 index 0000000000..7e67f5e9ad --- /dev/null +++ b/src/backends/cl/ClBackend.hpp @@ -0,0 +1,33 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#pragma once + +#include "backends/IBackendInternal.hpp" + +#include "ClLayerSupport.hpp" + +namespace armnn +{ + +class ClBackend : public IBackendInternal +{ +public: + ClBackend() = default; + ~ClBackend() = 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 + ClLayerSupport m_LayerSupport; +}; + +} // namespace armnn
\ No newline at end of file diff --git a/src/backends/cl/ClLayerSupport.hpp b/src/backends/cl/ClLayerSupport.hpp index 700d71801d..80e8488b3b 100644 --- a/src/backends/cl/ClLayerSupport.hpp +++ b/src/backends/cl/ClLayerSupport.hpp @@ -13,6 +13,12 @@ namespace armnn { + +class ClLayerSupport : public ILayerSupport +{ + // TODO implement +}; + bool IsClDirectConvolution2dSupported(const TensorInfo& weightInfo, const Convolution2dDescriptor& desc); bool IsClDepthwiseConvolution2dDescParamsSupported(std::string* reasonIfUnsupported, const DepthwiseConvolution2dDescriptor& parameters, diff --git a/src/backends/cl/backend.mk b/src/backends/cl/backend.mk index 057089ebdb..81540cc251 100644 --- a/src/backends/cl/backend.mk +++ b/src/backends/cl/backend.mk @@ -8,6 +8,7 @@ # file in the root of ArmNN BACKEND_SOURCES := \ + ClBackend.cpp \ ClContextControl.cpp \ ClLayerSupport.cpp \ ClWorkloadFactory.cpp \ |