diff options
Diffstat (limited to 'src/backends')
-rw-r--r-- | src/backends/cl/ClWorkloadFactory.cpp | 2 | ||||
-rw-r--r-- | src/backends/cl/backend.mk | 2 | ||||
-rw-r--r-- | src/backends/cl/workloads/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClSplitterFloatWorkload.cpp | 19 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClSplitterFloatWorkload.hpp | 20 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClSplitterUint8Workload.cpp | 19 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClSplitterUint8Workload.hpp | 21 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClSplitterWorkload.hpp (renamed from src/backends/cl/workloads/ClBaseSplitterWorkload.hpp) | 9 | ||||
-rw-r--r-- | src/backends/cl/workloads/ClWorkloads.hpp | 3 | ||||
-rw-r--r-- | src/backends/test/CreateWorkloadCl.cpp | 20 |
10 files changed, 16 insertions, 105 deletions
diff --git a/src/backends/cl/ClWorkloadFactory.cpp b/src/backends/cl/ClWorkloadFactory.cpp index 0b7e539202..bf17382031 100644 --- a/src/backends/cl/ClWorkloadFactory.cpp +++ b/src/backends/cl/ClWorkloadFactory.cpp @@ -113,7 +113,7 @@ std::unique_ptr<IWorkload> ClWorkloadFactory::CreateSoftmax(const SoftmaxQueueDe std::unique_ptr<IWorkload> ClWorkloadFactory::CreateSplitter(const SplitterQueueDescriptor& descriptor, const WorkloadInfo& info) const { - return MakeWorkload<ClSplitterFloatWorkload, ClSplitterUint8Workload>(descriptor, info); + return std::make_unique<ClSplitterWorkload>(descriptor, info); } std::unique_ptr<armnn::IWorkload> ClWorkloadFactory::CreateMerger(const MergerQueueDescriptor& descriptor, diff --git a/src/backends/cl/backend.mk b/src/backends/cl/backend.mk index f54a8deff7..057089ebdb 100644 --- a/src/backends/cl/backend.mk +++ b/src/backends/cl/backend.mk @@ -46,6 +46,4 @@ BACKEND_SOURCES := \ workloads/ClSoftmaxBaseWorkload.cpp \ workloads/ClSoftmaxFloatWorkload.cpp \ workloads/ClSoftmaxUint8Workload.cpp \ - workloads/ClSplitterFloatWorkload.cpp \ - workloads/ClSplitterUint8Workload.cpp \ workloads/ClSubtractionWorkload.cpp diff --git a/src/backends/cl/workloads/CMakeLists.txt b/src/backends/cl/workloads/CMakeLists.txt index 959d3e25df..9c48dc9e50 100644 --- a/src/backends/cl/workloads/CMakeLists.txt +++ b/src/backends/cl/workloads/CMakeLists.txt @@ -13,7 +13,6 @@ list(APPEND armnnClBackendWorkloads_sources ClBaseConstantWorkload.cpp ClBaseConstantWorkload.hpp ClBaseMergerWorkload.hpp - ClBaseSplitterWorkload.hpp ClBatchNormalizationFloatWorkload.cpp ClBatchNormalizationFloatWorkload.hpp ClConstantFloatWorkload.cpp @@ -76,10 +75,7 @@ list(APPEND armnnClBackendWorkloads_sources ClSoftmaxFloatWorkload.hpp ClSoftmaxUint8Workload.cpp ClSoftmaxUint8Workload.hpp - ClSplitterFloatWorkload.cpp - ClSplitterFloatWorkload.hpp - ClSplitterUint8Workload.cpp - ClSplitterUint8Workload.hpp + ClSplitterWorkload.hpp ClSubtractionWorkload.cpp ClSubtractionWorkload.hpp ClWorkloads.hpp diff --git a/src/backends/cl/workloads/ClSplitterFloatWorkload.cpp b/src/backends/cl/workloads/ClSplitterFloatWorkload.cpp deleted file mode 100644 index 5fd634bdb6..0000000000 --- a/src/backends/cl/workloads/ClSplitterFloatWorkload.cpp +++ /dev/null @@ -1,19 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#include "ClSplitterFloatWorkload.hpp" - -#include "ClWorkloadUtils.hpp" - -namespace armnn -{ - -void ClSplitterFloatWorkload::Execute() const -{ - ARMNN_SCOPED_PROFILING_EVENT_CL("ClSplitterFloatWorkload_Execute"); - ClBaseSplitterWorkload::Execute(); -} - -} //namespace armnn diff --git a/src/backends/cl/workloads/ClSplitterFloatWorkload.hpp b/src/backends/cl/workloads/ClSplitterFloatWorkload.hpp deleted file mode 100644 index a0b5846f8e..0000000000 --- a/src/backends/cl/workloads/ClSplitterFloatWorkload.hpp +++ /dev/null @@ -1,20 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#pragma once - -#include "ClBaseSplitterWorkload.hpp" - -namespace armnn -{ - -class ClSplitterFloatWorkload : public ClBaseSplitterWorkload<DataType::Float16, DataType::Float32> -{ -public: - using ClBaseSplitterWorkload<DataType::Float16, DataType::Float32>::ClBaseSplitterWorkload; - virtual void Execute() const override; -}; - -} //namespace armnn diff --git a/src/backends/cl/workloads/ClSplitterUint8Workload.cpp b/src/backends/cl/workloads/ClSplitterUint8Workload.cpp deleted file mode 100644 index 50a251ada7..0000000000 --- a/src/backends/cl/workloads/ClSplitterUint8Workload.cpp +++ /dev/null @@ -1,19 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#include "ClSplitterUint8Workload.hpp" - -#include "ClWorkloadUtils.hpp" - -namespace armnn -{ - -void ClSplitterUint8Workload::Execute() const -{ - ARMNN_SCOPED_PROFILING_EVENT_CL("ClSplitterUint8Workload_Execute"); - ClBaseSplitterWorkload::Execute(); -} - -} //namespace armnn diff --git a/src/backends/cl/workloads/ClSplitterUint8Workload.hpp b/src/backends/cl/workloads/ClSplitterUint8Workload.hpp deleted file mode 100644 index 19e8be5034..0000000000 --- a/src/backends/cl/workloads/ClSplitterUint8Workload.hpp +++ /dev/null @@ -1,21 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#pragma once - -#include "ClBaseSplitterWorkload.hpp" - -namespace armnn -{ -class ClSplitterUint8Workload : public ClBaseSplitterWorkload<DataType::QuantisedAsymm8> -{ -public: - using ClBaseSplitterWorkload<DataType::QuantisedAsymm8>::ClBaseSplitterWorkload; - virtual void Execute() const override; -}; -} //namespace armnn - - - diff --git a/src/backends/cl/workloads/ClBaseSplitterWorkload.hpp b/src/backends/cl/workloads/ClSplitterWorkload.hpp index 7fdcc84235..ffc02c047f 100644 --- a/src/backends/cl/workloads/ClBaseSplitterWorkload.hpp +++ b/src/backends/cl/workloads/ClSplitterWorkload.hpp @@ -7,21 +7,18 @@ #include <backends/Workload.hpp> -#include <arm_compute/runtime/CL/CLFunctions.h> - namespace armnn { // Base class template providing an implementation of the Splitter layer common to all data types. -template <armnn::DataType... DataTypes> -class ClBaseSplitterWorkload : public TypedWorkload<SplitterQueueDescriptor, DataTypes...> +class ClSplitterWorkload : public BaseWorkload<SplitterQueueDescriptor> { public: - using TypedWorkload<SplitterQueueDescriptor, DataTypes...>::TypedWorkload; + using BaseWorkload<SplitterQueueDescriptor>::BaseWorkload; void Execute() const override { - // With subtensors, merger is a no-op. + // With subtensors, splitter is a no-op. } }; diff --git a/src/backends/cl/workloads/ClWorkloads.hpp b/src/backends/cl/workloads/ClWorkloads.hpp index c0625f6791..439ad2d989 100644 --- a/src/backends/cl/workloads/ClWorkloads.hpp +++ b/src/backends/cl/workloads/ClWorkloads.hpp @@ -34,8 +34,7 @@ #include "ClResizeBilinearFloatWorkload.hpp" #include "ClSoftmaxFloatWorkload.hpp" #include "ClSoftmaxUint8Workload.hpp" -#include "ClSplitterFloatWorkload.hpp" -#include "ClSplitterUint8Workload.hpp" +#include "ClSplitterWorkload.hpp" #include "ClSubtractionWorkload.hpp" #include "ClConvertFp16ToFp32Workload.hpp" #include "ClConvertFp32ToFp16Workload.hpp" diff --git a/src/backends/test/CreateWorkloadCl.cpp b/src/backends/test/CreateWorkloadCl.cpp index 9b68546c93..85999203f8 100644 --- a/src/backends/test/CreateWorkloadCl.cpp +++ b/src/backends/test/CreateWorkloadCl.cpp @@ -399,13 +399,13 @@ BOOST_AUTO_TEST_CASE(CreateSoftmaxFloat16WorkloadTest) ClSoftmaxWorkloadTest<ClSoftmaxFloatWorkload, armnn::DataType::Float16>(); } -template <typename SplitterWorkloadType, typename armnn::DataType DataType> +template <typename armnn::DataType DataType> static void ClSplitterWorkloadTest() { Graph graph; ClWorkloadFactory factory; - auto workload = CreateSplitterWorkloadTest<SplitterWorkloadType, DataType>(factory, graph); + auto workload = CreateSplitterWorkloadTest<ClSplitterWorkload, DataType>(factory, graph); // Checks that outputs are as we expect them (see definition of CreateSplitterWorkloadTest). SplitterQueueDescriptor queueDescriptor = workload->GetData(); @@ -426,15 +426,15 @@ static void ClSplitterWorkloadTest() BOOST_AUTO_TEST_CASE(CreateSplitterFloatWorkload) { - ClSplitterWorkloadTest<ClSplitterFloatWorkload, armnn::DataType::Float32>(); + ClSplitterWorkloadTest<armnn::DataType::Float32>(); } BOOST_AUTO_TEST_CASE(CreateSplitterFloat16Workload) { - ClSplitterWorkloadTest<ClSplitterFloatWorkload, armnn::DataType::Float16>(); + ClSplitterWorkloadTest<armnn::DataType::Float16>(); } -template <typename SplitterWorkloadType, typename MergerWorkloadType, typename armnn::DataType DataType> +template <typename MergerWorkloadType, typename armnn::DataType DataType> static void ClSplitterMergerTest() { // Tests that it is possible to decide which output of the splitter layer @@ -447,7 +447,7 @@ static void ClSplitterMergerTest() ClWorkloadFactory factory; auto workloads = - CreateSplitterMergerWorkloadTest<SplitterWorkloadType, MergerWorkloadType, DataType> + CreateSplitterMergerWorkloadTest<ClSplitterWorkload, MergerWorkloadType, DataType> (factory, graph); auto wlSplitter = std::move(workloads.first); @@ -478,12 +478,12 @@ static void ClSplitterMergerTest() BOOST_AUTO_TEST_CASE(CreateSplitterMergerFloatWorkload) { - ClSplitterMergerTest<ClSplitterFloatWorkload, ClMergerFloatWorkload, armnn::DataType::Float32>(); + ClSplitterMergerTest<ClMergerFloatWorkload, armnn::DataType::Float32>(); } BOOST_AUTO_TEST_CASE(CreateSplitterMergerFloat16Workload) { - ClSplitterMergerTest<ClSplitterFloatWorkload, ClMergerFloatWorkload, armnn::DataType::Float16>(); + ClSplitterMergerTest<ClMergerFloatWorkload, armnn::DataType::Float16>(); } @@ -494,13 +494,13 @@ BOOST_AUTO_TEST_CASE(CreateSingleOutputMultipleInputs) Graph graph; ClWorkloadFactory factory; - std::unique_ptr<ClSplitterFloatWorkload> wlSplitter; + std::unique_ptr<ClSplitterWorkload> wlSplitter; std::unique_ptr<ClActivationFloatWorkload> wlActiv0_0; std::unique_ptr<ClActivationFloatWorkload> wlActiv0_1; std::unique_ptr<ClActivationFloatWorkload> wlActiv1_0; std::unique_ptr<ClActivationFloatWorkload> wlActiv1_1; - CreateSplitterMultipleInputsOneOutputWorkloadTest<ClSplitterFloatWorkload, + CreateSplitterMultipleInputsOneOutputWorkloadTest<ClSplitterWorkload, ClActivationFloatWorkload, armnn::DataType::Float32>(factory, graph, wlSplitter, wlActiv0_0, wlActiv0_1, wlActiv1_0, wlActiv1_1); |