aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/backendsCommon')
-rw-r--r--src/backends/backendsCommon/MapWorkload.hpp2
-rw-r--r--src/backends/backendsCommon/MemCopyWorkload.cpp6
-rw-r--r--src/backends/backendsCommon/MemCopyWorkload.hpp29
-rw-r--r--src/backends/backendsCommon/MemImportWorkload.cpp2
-rw-r--r--src/backends/backendsCommon/MemImportWorkload.hpp2
-rw-r--r--src/backends/backendsCommon/MemSyncWorkload.cpp2
-rw-r--r--src/backends/backendsCommon/MemSyncWorkload.hpp2
-rw-r--r--src/backends/backendsCommon/TensorHandle.cpp2
-rw-r--r--src/backends/backendsCommon/TensorHandle.hpp268
-rw-r--r--src/backends/backendsCommon/UnmapWorkload.hpp2
-rw-r--r--src/backends/backendsCommon/Workload.hpp219
-rw-r--r--src/backends/backendsCommon/WorkloadData.cpp5
-rw-r--r--src/backends/backendsCommon/WorkloadData.hpp773
-rw-r--r--src/backends/backendsCommon/WorkloadFactory.cpp6
-rw-r--r--src/backends/backendsCommon/WorkloadFactory.hpp289
-rw-r--r--src/backends/backendsCommon/WorkloadFactoryBase.hpp2
-rw-r--r--src/backends/backendsCommon/WorkloadUtils.hpp3
-rw-r--r--src/backends/backendsCommon/test/ActivationFixture.hpp2
-rw-r--r--src/backends/backendsCommon/test/CommonTestUtils.hpp8
-rw-r--r--src/backends/backendsCommon/test/DefaultAsyncExecuteTest.cpp4
-rw-r--r--src/backends/backendsCommon/test/DynamicBackendTests.hpp2
-rw-r--r--src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/LayerReleaseConstantDataTest.cpp4
-rw-r--r--src/backends/backendsCommon/test/WorkloadDataValidation.cpp6
-rw-r--r--src/backends/backendsCommon/test/WorkloadTestUtils.hpp5
-rw-r--r--src/backends/backendsCommon/test/layerTests/AbsTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ActivationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/AdditionTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/CastTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DebugTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/DivisionTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ElementwiseTestImpl.hpp8
-rw-r--r--src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.hpp8
-rw-r--r--src/backends/backendsCommon/test/layerTests/ExpTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FillTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FloorTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/GatherTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/LstmTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MaximumTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MinimumTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/NegTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/PadTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/RankTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReductionTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ResizeTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/RsqrtTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ShapeTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SinTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SliceTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SplitterTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/StackTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.hpp2
142 files changed, 202 insertions, 1747 deletions
diff --git a/src/backends/backendsCommon/MapWorkload.hpp b/src/backends/backendsCommon/MapWorkload.hpp
index dbbf36a9ee..e8b5bd3285 100644
--- a/src/backends/backendsCommon/MapWorkload.hpp
+++ b/src/backends/backendsCommon/MapWorkload.hpp
@@ -4,7 +4,7 @@
//
#pragma once
-#include "Workload.hpp"
+#include <armnn/backends/Workload.hpp>
namespace armnn
{
diff --git a/src/backends/backendsCommon/MemCopyWorkload.cpp b/src/backends/backendsCommon/MemCopyWorkload.cpp
index 946de30430..09d0e6c7d1 100644
--- a/src/backends/backendsCommon/MemCopyWorkload.cpp
+++ b/src/backends/backendsCommon/MemCopyWorkload.cpp
@@ -5,8 +5,10 @@
#include <ResolveType.hpp>
-#include <backendsCommon/MemCopyWorkload.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include "WorkloadUtils.hpp"
+
+#include <armnn/backends/MemCopyWorkload.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/utility/PolymorphicDowncast.hpp>
diff --git a/src/backends/backendsCommon/MemCopyWorkload.hpp b/src/backends/backendsCommon/MemCopyWorkload.hpp
index 99845f397f..1c6fa70284 100644
--- a/src/backends/backendsCommon/MemCopyWorkload.hpp
+++ b/src/backends/backendsCommon/MemCopyWorkload.hpp
@@ -1,29 +1,8 @@
//
-// Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
-#pragma once
-#include "Workload.hpp"
-#include "WorkloadUtils.hpp"
-
-#include <armnn/backends/TensorHandleFwd.hpp>
-
-#include <utility>
-
-namespace armnn
-{
-
-class CopyMemGenericWorkload : public BaseWorkload<MemCopyQueueDescriptor>
-{
-public:
- CopyMemGenericWorkload(const MemCopyQueueDescriptor& descriptor, const WorkloadInfo& info);
- void Execute() const override;
- void ExecuteAsync(WorkingMemDescriptor& descriptor) override;
-
-private:
- using TensorHandlePair = std::pair<const ITensorHandle*, ITensorHandle*>;
- std::vector<TensorHandlePair> m_TensorHandlePairs;
-};
-
-} //namespace armnn
+#include <armnn/backends/MemCopyWorkload.hpp>
+#pragma message("src/backends/backendsCommon/MemCopyWorkload.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use public interface include/armnn/backends/MemCopyWorkload.hpp")
diff --git a/src/backends/backendsCommon/MemImportWorkload.cpp b/src/backends/backendsCommon/MemImportWorkload.cpp
index 844908f27b..22e919f4dc 100644
--- a/src/backends/backendsCommon/MemImportWorkload.cpp
+++ b/src/backends/backendsCommon/MemImportWorkload.cpp
@@ -6,7 +6,7 @@
#include <ResolveType.hpp>
#include <backendsCommon/MemImportWorkload.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <cstring>
diff --git a/src/backends/backendsCommon/MemImportWorkload.hpp b/src/backends/backendsCommon/MemImportWorkload.hpp
index d3c57239bd..c5bdf31e3f 100644
--- a/src/backends/backendsCommon/MemImportWorkload.hpp
+++ b/src/backends/backendsCommon/MemImportWorkload.hpp
@@ -4,10 +4,10 @@
//
#pragma once
-#include "Workload.hpp"
#include "WorkloadUtils.hpp"
#include <armnn/backends/TensorHandleFwd.hpp>
+#include <armnn/backends/Workload.hpp>
#include <utility>
diff --git a/src/backends/backendsCommon/MemSyncWorkload.cpp b/src/backends/backendsCommon/MemSyncWorkload.cpp
index 9025e665c9..af68306557 100644
--- a/src/backends/backendsCommon/MemSyncWorkload.cpp
+++ b/src/backends/backendsCommon/MemSyncWorkload.cpp
@@ -6,7 +6,7 @@
#include <ResolveType.hpp>
#include <backendsCommon/MemSyncWorkload.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <cstring>
diff --git a/src/backends/backendsCommon/MemSyncWorkload.hpp b/src/backends/backendsCommon/MemSyncWorkload.hpp
index 7b59a0b55f..eb2651731c 100644
--- a/src/backends/backendsCommon/MemSyncWorkload.hpp
+++ b/src/backends/backendsCommon/MemSyncWorkload.hpp
@@ -4,10 +4,10 @@
//
#pragma once
-#include "Workload.hpp"
#include "WorkloadUtils.hpp"
#include <armnn/backends/TensorHandleFwd.hpp>
+#include <armnn/backends/Workload.hpp>
#include <utility>
diff --git a/src/backends/backendsCommon/TensorHandle.cpp b/src/backends/backendsCommon/TensorHandle.cpp
index d4660d6de3..d55fca24d4 100644
--- a/src/backends/backendsCommon/TensorHandle.cpp
+++ b/src/backends/backendsCommon/TensorHandle.cpp
@@ -5,7 +5,7 @@
#include <armnn/Exceptions.hpp>
#include <armnn/utility/IgnoreUnused.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <cstring>
diff --git a/src/backends/backendsCommon/TensorHandle.hpp b/src/backends/backendsCommon/TensorHandle.hpp
index ba1fc16378..99aac0ad5d 100644
--- a/src/backends/backendsCommon/TensorHandle.hpp
+++ b/src/backends/backendsCommon/TensorHandle.hpp
@@ -3,268 +3,6 @@
// SPDX-License-Identifier: MIT
//
-#pragma once
-
-#include <armnn/backends/TensorHandleFwd.hpp>
-#include <armnn/backends/ITensorHandle.hpp>
-
-#include <armnn/TypesUtils.hpp>
-
-#include <armnnUtils/CompatibleTypes.hpp>
-
-#include <algorithm>
-
-#include <armnn/utility/Assert.hpp>
-
-namespace armnn
-{
-
-// Get a TensorShape representing the strides (in bytes) for each dimension
-// of a tensor, assuming fully packed data with no padding
-TensorShape GetUnpaddedTensorStrides(const TensorInfo& tensorInfo);
-
-// Abstract tensor handles wrapping a readable region of memory, interpreting it as tensor data.
-class ConstTensorHandle : public ITensorHandle
-{
-public:
- template <typename T>
- const T* GetConstTensor() const
- {
- if (armnnUtils::CompatibleTypes<T>(GetTensorInfo().GetDataType()))
- {
- return reinterpret_cast<const T*>(m_Memory);
- }
- else
- {
- throw armnn::Exception("Attempting to get not compatible type tensor!");
- }
- }
-
- const TensorInfo& GetTensorInfo() const
- {
- return m_TensorInfo;
- }
-
- virtual void Manage() override {}
-
- virtual ITensorHandle* GetParent() const override { return nullptr; }
-
- virtual const void* Map(bool /* blocking = true */) const override { return m_Memory; }
- virtual void Unmap() const override {}
-
- TensorShape GetStrides() const override
- {
- return GetUnpaddedTensorStrides(m_TensorInfo);
- }
- TensorShape GetShape() const override { return m_TensorInfo.GetShape(); }
-
-protected:
- ConstTensorHandle(const TensorInfo& tensorInfo);
-
- void SetConstMemory(const void* mem) { m_Memory = mem; }
-
-private:
- // Only used for testing
- void CopyOutTo(void *) const override { ARMNN_ASSERT_MSG(false, "Unimplemented"); }
- void CopyInFrom(const void*) override { ARMNN_ASSERT_MSG(false, "Unimplemented"); }
-
- ConstTensorHandle(const ConstTensorHandle& other) = delete;
- ConstTensorHandle& operator=(const ConstTensorHandle& other) = delete;
-
- TensorInfo m_TensorInfo;
- const void* m_Memory;
-};
-
-template<>
-const void* ConstTensorHandle::GetConstTensor<void>() const;
-
-// Abstract specialization of ConstTensorHandle that allows write access to the same data.
-class TensorHandle : public ConstTensorHandle
-{
-public:
- template <typename T>
- T* GetTensor() const
- {
- if (armnnUtils::CompatibleTypes<T>(GetTensorInfo().GetDataType()))
- {
- return reinterpret_cast<T*>(m_MutableMemory);
- }
- else
- {
- throw armnn::Exception("Attempting to get not compatible type tensor!");
- }
- }
-
-protected:
- TensorHandle(const TensorInfo& tensorInfo);
-
- void SetMemory(void* mem)
- {
- m_MutableMemory = mem;
- SetConstMemory(m_MutableMemory);
- }
-
-private:
-
- TensorHandle(const TensorHandle& other) = delete;
- TensorHandle& operator=(const TensorHandle& other) = delete;
- void* m_MutableMemory;
-};
-
-template <>
-void* TensorHandle::GetTensor<void>() const;
-
-// A TensorHandle that owns the wrapped memory region.
-class ScopedTensorHandle : public TensorHandle
-{
-public:
- explicit ScopedTensorHandle(const TensorInfo& tensorInfo);
-
- // Copies contents from Tensor.
- explicit ScopedTensorHandle(const ConstTensor& tensor);
-
- // Copies contents from ConstTensorHandle
- explicit ScopedTensorHandle(const ConstTensorHandle& tensorHandle);
-
- ScopedTensorHandle(const ScopedTensorHandle& other);
- ScopedTensorHandle& operator=(const ScopedTensorHandle& other);
- ~ScopedTensorHandle();
-
- virtual void Allocate() override;
-
-private:
- // Only used for testing
- void CopyOutTo(void* memory) const override;
- void CopyInFrom(const void* memory) override;
-
- void CopyFrom(const ScopedTensorHandle& other);
- void CopyFrom(const void* srcMemory, unsigned int numBytes);
-};
-
-// A TensorHandle that wraps an already allocated memory region.
-//
-// Clients must make sure the passed in memory region stays alive for the lifetime of
-// the PassthroughTensorHandle instance.
-//
-// Note there is no polymorphism to/from ConstPassthroughTensorHandle.
-class PassthroughTensorHandle : public TensorHandle
-{
-public:
- PassthroughTensorHandle(const TensorInfo& tensorInfo, void* mem)
- : TensorHandle(tensorInfo)
- {
- SetMemory(mem);
- }
-
- virtual void Allocate() override;
-};
-
-// A ConstTensorHandle that wraps an already allocated memory region.
-//
-// This allows users to pass in const memory to a network.
-// Clients must make sure the passed in memory region stays alive for the lifetime of
-// the PassthroughTensorHandle instance.
-//
-// Note there is no polymorphism to/from PassthroughTensorHandle.
-class ConstPassthroughTensorHandle : public ConstTensorHandle
-{
-public:
- ConstPassthroughTensorHandle(const TensorInfo& tensorInfo, const void* mem)
- : ConstTensorHandle(tensorInfo)
- {
- SetConstMemory(mem);
- }
-
- virtual void Allocate() override;
-};
-
-
-// Template specializations.
-
-template <>
-const void* ConstTensorHandle::GetConstTensor() const;
-
-template <>
-void* TensorHandle::GetTensor() const;
-
-class ManagedConstTensorHandle
-{
-
-public:
- explicit ManagedConstTensorHandle(std::shared_ptr<ConstTensorHandle> ptr)
- : m_Mapped(false)
- , m_TensorHandle(std::move(ptr)) {};
-
- /// RAII Managed resource Unmaps MemoryArea once out of scope
- const void* Map(bool blocking = true)
- {
- if (m_TensorHandle)
- {
- auto pRet = m_TensorHandle->Map(blocking);
- m_Mapped = true;
- return pRet;
- }
- else
- {
- throw armnn::Exception("Attempting to Map null TensorHandle");
- }
-
- }
-
- // Delete copy constructor as it's unnecessary
- ManagedConstTensorHandle(const ConstTensorHandle& other) = delete;
-
- // Delete copy assignment as it's unnecessary
- ManagedConstTensorHandle& operator=(const ManagedConstTensorHandle& other) = delete;
-
- // Delete move assignment as it's unnecessary
- ManagedConstTensorHandle& operator=(ManagedConstTensorHandle&& other) noexcept = delete;
-
- ~ManagedConstTensorHandle()
- {
- // Bias tensor handles need to be initialized empty before entering scope of if statement checking if enabled
- if (m_TensorHandle)
- {
- Unmap();
- }
- }
-
- void Unmap()
- {
- // Only unmap if mapped and TensorHandle exists.
- if (m_Mapped && m_TensorHandle)
- {
- m_TensorHandle->Unmap();
- m_Mapped = false;
- }
- }
-
- const TensorInfo& GetTensorInfo() const
- {
- return m_TensorHandle->GetTensorInfo();
- }
-
- bool IsMapped() const
- {
- return m_Mapped;
- }
-
-private:
- bool m_Mapped;
- std::shared_ptr<ConstTensorHandle> m_TensorHandle;
-};
-
-using ConstCpuTensorHandle ARMNN_DEPRECATED_MSG_REMOVAL_DATE("ConstCpuTensorHandle is deprecated, "
- "use ConstTensorHandle instead", "22.05") = ConstTensorHandle;
-using CpuTensorHandle ARMNN_DEPRECATED_MSG_REMOVAL_DATE("CpuTensorHandle is deprecated, "
- "use TensorHandle instead", "22.05") = TensorHandle;
-using ScopedCpuTensorHandle ARMNN_DEPRECATED_MSG_REMOVAL_DATE("ScopedCpuTensorHandle is deprecated, "
- "use ScopedTensorHandle instead", "22.05") = ScopedTensorHandle;
-using PassthroughCpuTensorHandle ARMNN_DEPRECATED_MSG_REMOVAL_DATE("PassthroughCpuTensorHandle is deprecated, use "
- "PassthroughTensorHandle instead",
- "22.05") = PassthroughTensorHandle;
-using ConstPassthroughCpuTensorHandle ARMNN_DEPRECATED_MSG_REMOVAL_DATE("ConstPassthroughCpuTensorHandle is "
- "deprecated, use ConstPassthroughTensorHandle "
- "instead", "22.05") = ConstPassthroughTensorHandle;
-
-} // namespace armnn
+#include <armnn/backends/TensorHandle.hpp>
+#pragma message("src/backends/backendsCommon/TensorHandle.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use public interface include/armnn/backends/TensorHandle.hpp")
diff --git a/src/backends/backendsCommon/UnmapWorkload.hpp b/src/backends/backendsCommon/UnmapWorkload.hpp
index 7f13f0d295..c6ac3e7e46 100644
--- a/src/backends/backendsCommon/UnmapWorkload.hpp
+++ b/src/backends/backendsCommon/UnmapWorkload.hpp
@@ -4,7 +4,7 @@
//
#pragma once
-#include "Workload.hpp"
+#include <armnn/backends/Workload.hpp>
namespace armnn
{
diff --git a/src/backends/backendsCommon/Workload.hpp b/src/backends/backendsCommon/Workload.hpp
index 87869c9841..00b6bfe4a7 100644
--- a/src/backends/backendsCommon/Workload.hpp
+++ b/src/backends/backendsCommon/Workload.hpp
@@ -1,219 +1,8 @@
//
-// Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
-#pragma once
-#include "WorkloadData.hpp"
-#include "WorkloadInfo.hpp"
-#include "WorkingMemDescriptor.hpp"
-
-#include <armnn/backends/IWorkload.hpp>
-#include <Profiling.hpp>
-#include <ProfilingService.hpp>
-
-#include <algorithm>
-
-namespace armnn
-{
-
-// NullWorkload used to denote an unsupported workload when used by the MakeWorkload<> template
-// in the various workload factories.
-// There should never be an instantiation of a NullWorkload.
-class NullWorkload : public IWorkload
-{
- NullWorkload()=delete;
-};
-
-template <typename QueueDescriptor>
-class BaseWorkload : public IWorkload
-{
-public:
-
- BaseWorkload(const QueueDescriptor& descriptor, const WorkloadInfo& info)
- : m_Data(descriptor),
- m_Guid(profiling::ProfilingService::GetNextGuid())
- {
- m_Data.Validate(info);
- }
-
- void ExecuteAsync(WorkingMemDescriptor& workingMemDescriptor) override
- {
- ARMNN_LOG(info) << "Using default async workload execution, this will network affect performance";
- std::lock_guard<std::mutex> lockGuard(m_AsyncWorkloadMutex);
-
- m_Data.m_Inputs = workingMemDescriptor.m_Inputs;
- m_Data.m_Outputs = workingMemDescriptor.m_Outputs;
-
- Execute();
- };
-
- void PostAllocationConfigure() override {}
-
- const QueueDescriptor& GetData() const { return m_Data; }
-
- profiling::ProfilingGuid GetGuid() const final { return m_Guid; }
-
-protected:
- QueueDescriptor m_Data;
- const profiling::ProfilingGuid m_Guid;
-
-private:
- std::mutex m_AsyncWorkloadMutex;
-};
-
-// TypedWorkload used
-template <typename QueueDescriptor, armnn::DataType... DataTypes>
-class TypedWorkload : public BaseWorkload<QueueDescriptor>
-{
-public:
-
- TypedWorkload(const QueueDescriptor& descriptor, const WorkloadInfo& info)
- : BaseWorkload<QueueDescriptor>(descriptor, info)
- {
- std::vector<armnn::DataType> dataTypes = {DataTypes...};
- armnn::DataType expectedInputType;
-
- if (!info.m_InputTensorInfos.empty())
- {
- expectedInputType = info.m_InputTensorInfos.front().GetDataType();
-
- if (std::find(dataTypes.begin(), dataTypes.end(), expectedInputType) == dataTypes.end())
- {
- ARMNN_ASSERT_MSG(false, "Trying to create workload with incorrect type");
- }
- ARMNN_ASSERT_MSG(std::all_of(std::next(info.m_InputTensorInfos.begin()),
- info.m_InputTensorInfos.end(),
- [&](auto it){
- return it.GetDataType() == expectedInputType;
- }),
- "Trying to create workload with incorrect type");
- }
- armnn::DataType expectedOutputType;
-
- if (!info.m_OutputTensorInfos.empty())
- {
- expectedOutputType = info.m_OutputTensorInfos.front().GetDataType();
-
- if (!info.m_InputTensorInfos.empty())
- {
- if (expectedOutputType != expectedInputType)
- {
- ARMNN_ASSERT_MSG(false, "Trying to create workload with incorrect type");
- }
- }
- else if (std::find(dataTypes.begin(), dataTypes.end(), expectedOutputType) == dataTypes.end())
- {
- ARMNN_ASSERT_MSG(false, "Trying to create workload with incorrect type");
- }
- ARMNN_ASSERT_MSG(std::all_of(std::next(info.m_OutputTensorInfos.begin()),
- info.m_OutputTensorInfos.end(),
- [&](auto it){
- return it.GetDataType() == expectedOutputType;
- }),
- "Trying to create workload with incorrect type");
- }
- }
-};
-
-template <typename QueueDescriptor, armnn::DataType InputDataType, armnn::DataType OutputDataType>
-class MultiTypedWorkload : public BaseWorkload<QueueDescriptor>
-{
-public:
-
- MultiTypedWorkload(const QueueDescriptor& descriptor, const WorkloadInfo& info)
- : BaseWorkload<QueueDescriptor>(descriptor, info)
- {
- ARMNN_ASSERT_MSG(std::all_of(info.m_InputTensorInfos.begin(),
- info.m_InputTensorInfos.end(),
- [&](auto it){
- return it.GetDataType() == InputDataType;
- }),
- "Trying to create workload with incorrect type");
-
- ARMNN_ASSERT_MSG(std::all_of(info.m_OutputTensorInfos.begin(),
- info.m_OutputTensorInfos.end(),
- [&](auto it){
- return it.GetDataType() == OutputDataType;
- }),
- "Trying to create workload with incorrect type");
- }
-};
-
-// FirstInputTypedWorkload used to check type of the first input
-template <typename QueueDescriptor, armnn::DataType DataType>
-class FirstInputTypedWorkload : public BaseWorkload<QueueDescriptor>
-{
-public:
-
- FirstInputTypedWorkload(const QueueDescriptor& descriptor, const WorkloadInfo& info)
- : BaseWorkload<QueueDescriptor>(descriptor, info)
- {
- if (!info.m_InputTensorInfos.empty())
- {
- ARMNN_ASSERT_MSG(info.m_InputTensorInfos.front().GetDataType() == DataType,
- "Trying to create workload with incorrect type");
- }
-
- ARMNN_ASSERT_MSG(std::all_of(info.m_OutputTensorInfos.begin(),
- info.m_OutputTensorInfos.end(),
- [&](auto it){
- return it.GetDataType() == DataType;
- }),
- "Trying to create workload with incorrect type");
- }
-};
-
-template <typename QueueDescriptor>
-using FloatWorkload = TypedWorkload<QueueDescriptor,
- armnn::DataType::Float16,
- armnn::DataType::Float32>;
-
-template <typename QueueDescriptor>
-using Float32Workload = TypedWorkload<QueueDescriptor, armnn::DataType::Float32>;
-
-template <typename QueueDescriptor>
-using Uint8Workload = TypedWorkload<QueueDescriptor, armnn::DataType::QAsymmU8>;
-
-template <typename QueueDescriptor>
-using Int32Workload = TypedWorkload<QueueDescriptor, armnn::DataType::Signed32>;
-
-template <typename QueueDescriptor>
-using BooleanWorkload = TypedWorkload<QueueDescriptor, armnn::DataType::Boolean>;
-
-template <typename QueueDescriptor>
-using BaseFloat32ComparisonWorkload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::Float32,
- armnn::DataType::Boolean>;
-
-template <typename QueueDescriptor>
-using BaseUint8ComparisonWorkload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::QAsymmU8,
- armnn::DataType::Boolean>;
-
-template <typename QueueDescriptor>
-using BFloat16ToFloat32Workload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::BFloat16,
- armnn::DataType::Float32>;
-
-template <typename QueueDescriptor>
-using Float32ToBFloat16Workload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::Float32,
- armnn::DataType::BFloat16>;
-
-template <typename QueueDescriptor>
-using Float16ToFloat32Workload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::Float16,
- armnn::DataType::Float32>;
-
-template <typename QueueDescriptor>
-using Float32ToFloat16Workload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::Float32,
- armnn::DataType::Float16>;
-
-template <typename QueueDescriptor>
-using Uint8ToFloat32Workload = MultiTypedWorkload<QueueDescriptor,
- armnn::DataType::QAsymmU8,
- armnn::DataType::Float32>;
-
-} //namespace armnn
+#include <armnn/backends/Workload.hpp>
+#pragma message("src/backends/backendsCommon/Workload.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use public interface include/armnn/backends/Workload.hpp")
diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp
index eb2ff4eff3..385affa5fa 100644
--- a/src/backends/backendsCommon/WorkloadData.cpp
+++ b/src/backends/backendsCommon/WorkloadData.cpp
@@ -3,8 +3,9 @@
// SPDX-License-Identifier: MIT
//
-#include <backendsCommon/TensorHandle.hpp>
-#include <backendsCommon/WorkloadData.hpp>
+#include <armnn/backends/TensorHandle.hpp>
+#include <armnn/backends/WorkloadData.hpp>
+#include <armnn/backends/WorkloadInfo.hpp>
#include <armnnUtils/DataLayoutIndexed.hpp>
#include <armnnUtils/TensorUtils.hpp>
#include <armnn/utility/NumericCast.hpp>
diff --git a/src/backends/backendsCommon/WorkloadData.hpp b/src/backends/backendsCommon/WorkloadData.hpp
index 15c79e31c0..359c33a839 100644
--- a/src/backends/backendsCommon/WorkloadData.hpp
+++ b/src/backends/backendsCommon/WorkloadData.hpp
@@ -1,773 +1,8 @@
//
-// Copyright © 2017 Arm Ltd. All rights reserved.
+// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
-#pragma once
-#include <armnn/backends/TensorHandleFwd.hpp>
-#include <armnn/backends/ITensorHandle.hpp>
-
-#include <InternalTypes.hpp>
-
-#include <armnn/Deprecated.hpp>
-#include <armnn/Descriptors.hpp>
-#include <armnn/Exceptions.hpp>
-#include <armnn/Types.hpp>
-#include <armnn/Tensor.hpp>
-
-#include <backendsCommon/WorkloadInfo.hpp>
-
-namespace armnn
-{
-
-//A helper function that returns the bias data type required for given input data type.
-DataType GetBiasDataType(DataType inputDataType);
-
-struct WorkloadInfo;
-
-struct QueueDescriptor
-{
- std::vector<ITensorHandle*> m_Inputs;
- std::vector<ITensorHandle*> m_Outputs;
- void* m_AdditionalInfoObject;
-
- void ValidateInputsOutputs(const std::string& descName,
- unsigned int numExpectedIn,
- unsigned int numExpectedOut) const;
-
- template<typename T>
- const T* GetAdditionalInformation() const
- {
- return static_cast<T*>(m_AdditionalInfoObject);
- }
-
-protected:
- ~QueueDescriptor() = default;
- QueueDescriptor()
- : m_AdditionalInfoObject(nullptr)
- {}
- QueueDescriptor(QueueDescriptor const&) = default;
- QueueDescriptor& operator=(QueueDescriptor const&) = default;
-};
-
-// Base class for queue descriptors which contain parameters.
-template <typename LayerDescriptor>
-struct QueueDescriptorWithParameters : public QueueDescriptor
-{
- LayerDescriptor m_Parameters;
-
-protected:
- ~QueueDescriptorWithParameters() = default;
- QueueDescriptorWithParameters() = default;
- QueueDescriptorWithParameters(QueueDescriptorWithParameters const&) = default;
- QueueDescriptorWithParameters& operator=(QueueDescriptorWithParameters const&) = default;
-};
-
-struct MapQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct UnmapQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct MemCopyQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-using InputQueueDescriptor = MemCopyQueueDescriptor;
-using OutputQueueDescriptor = MemCopyQueueDescriptor;
-
-struct MemImportQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct MemSyncQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Softmax layer workload data.
-struct SoftmaxQueueDescriptor : QueueDescriptorWithParameters<SoftmaxDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Splitter layer workload data.
-struct SplitterQueueDescriptor : QueueDescriptorWithParameters<ViewsDescriptor>
-{
- struct ViewOrigin
- {
- ViewOrigin() {}
- ViewOrigin(std::vector<unsigned int> const& origin) : m_Origin(origin) {}
-
- //View origin (size of the vector is the same as number of dimensions of the view).
- std::vector<unsigned int> m_Origin;
- };
-
- //View defines a tensor that will be carved from the input tensor.
- //View origins are stored here, the extents are defined by sizes of the output tensors.
- std::vector<ViewOrigin> m_ViewOrigins;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Concat layer workload data.
-struct ConcatQueueDescriptor : QueueDescriptorWithParameters<OriginsDescriptor>
-{
- struct ViewOrigin
- {
- ViewOrigin() {}
- ViewOrigin(const std::vector<unsigned int>& origin) : m_Origin(origin) {}
-
- //View origin (size of the vector is the same as number of dimensions of the view).
- std::vector<unsigned int> m_Origin;
- };
-
- //View defines a sub-area of the output tensor that will be filled with the corresponding input tensor.
- //View origins are stored here, the extents are defined by sizes of the input tensors.
- std::vector<ViewOrigin> m_ViewOrigins;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Deprecated. Use ConcatQueueDescriptor instead
-using MergerQueueDescriptor = ConcatQueueDescriptor;
-
-// Stack layer workload data.
-struct StackQueueDescriptor : QueueDescriptorWithParameters<StackDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Activation layer workload data.
-struct ActivationQueueDescriptor : QueueDescriptorWithParameters<ActivationDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ArgMinMaxQueueDescriptor : QueueDescriptorWithParameters<ArgMinMaxDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct CastQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Fill layer workload data.
-struct FillQueueDescriptor : QueueDescriptorWithParameters<FillDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Fully connected layer workload data.
-struct FullyConnectedQueueDescriptor : QueueDescriptorWithParameters<FullyConnectedDescriptor>
-{
- FullyConnectedQueueDescriptor()
- : m_Weight(nullptr)
- , m_Bias(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Weight;
- const ConstTensorHandle* m_Bias;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Permute layer workload data.
-struct PermuteQueueDescriptor : QueueDescriptorWithParameters<PermuteDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Pooling 2D layer workload data.
-struct Pooling2dQueueDescriptor : QueueDescriptorWithParameters<Pooling2dDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Pooling 3D layer workload data.
-struct Pooling3dQueueDescriptor : QueueDescriptorWithParameters<Pooling3dDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-
-// Convolution 2D layer workload data.
-struct Convolution2dQueueDescriptor : QueueDescriptorWithParameters<Convolution2dDescriptor>
-{
- Convolution2dQueueDescriptor()
- : m_Weight(nullptr)
- , m_Bias(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Weight;
- const ConstTensorHandle* m_Bias;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Convolution 3D layer workload data.
-struct Convolution3dQueueDescriptor : QueueDescriptorWithParameters<Convolution3dDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-/// Depthwise Convolution 2D layer workload data.
-///
-/// @note
-/// The weights are in the format [1, H, W, I*M]. Where I is the input channel size, M the depthwise mutliplier and
-/// H, W is the height and width of the filter kernel. If per channel quantization is applied
-/// the weights will be quantized along the last dimension/axis (I*M) which corresponds to the output channel size.
-/// If per channel quantization is applied the weights tensor will have I*M scales, one for each dimension
-/// of the quantization axis. You have to be aware of this when reshaping the weights tensor.
-/// Splitting the I*M axis, e.g. [1, H, W, I*M] --> [H, W, I, M], won't work without taking care of the
-/// corresponding quantization scales.
-/// If there is no per channel quantization applied reshaping the weights tensor won't cause any issues. There are
-/// preconfigured permutation functions available @link WorkloadUtils.hpp here.
-///
-struct DepthwiseConvolution2dQueueDescriptor : QueueDescriptorWithParameters<DepthwiseConvolution2dDescriptor>
-{
- DepthwiseConvolution2dQueueDescriptor()
- : m_Weight(nullptr)
- , m_Bias(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Weight;
- const ConstTensorHandle* m_Bias;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct DetectionPostProcessQueueDescriptor : QueueDescriptorWithParameters<DetectionPostProcessDescriptor>
-{
- DetectionPostProcessQueueDescriptor()
- : m_Anchors(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Anchors;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Normalization layer workload data.
-struct NormalizationQueueDescriptor : QueueDescriptorWithParameters<NormalizationDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Add layer workload data.
-struct AdditionQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Multiplication layer workload data.
-struct MultiplicationQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Division layer workload data.
-struct DivisionQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Subtraction layer workload data.
-struct SubtractionQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Maximum layer workload data.
-struct MaximumQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Mean layer workload data.
-struct MeanQueueDescriptor : QueueDescriptorWithParameters<MeanDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Pad layer workload data
-struct PadQueueDescriptor : QueueDescriptorWithParameters<PadDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct QuantizeQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Deprecated use ComparisonQueueDescriptor instead
-struct EqualQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Batch norm layer workload data.
-struct BatchNormalizationQueueDescriptor : QueueDescriptorWithParameters<BatchNormalizationDescriptor>
-{
- BatchNormalizationQueueDescriptor()
- : m_Mean(nullptr)
- , m_Variance(nullptr)
- , m_Beta(nullptr)
- , m_Gamma(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Mean;
- const ConstTensorHandle* m_Variance;
- const ConstTensorHandle* m_Beta;
- const ConstTensorHandle* m_Gamma;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct RankQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-ARMNN_NO_DEPRECATE_WARN_BEGIN
-struct
-ARMNN_DEPRECATED_MSG_REMOVAL_DATE("ResizeBilinearQueueDescriptor is deprecated use ResizeQueueDescriptor instead",
- "22.08")
-ResizeBilinearQueueDescriptor : QueueDescriptorWithParameters<ResizeBilinearDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-ARMNN_NO_DEPRECATE_WARN_END
-
-struct ResizeQueueDescriptor : QueueDescriptorWithParameters<ResizeDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct FakeQuantizationQueueDescriptor : QueueDescriptorWithParameters<FakeQuantizationDescriptor>
-{
- FakeQuantizationQueueDescriptor()
- : m_Min(nullptr)
- , m_Max(nullptr)
- {
- }
-
- const ConstTensorHandle* m_Min;
- const ConstTensorHandle* m_Max;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct InstanceNormalizationQueueDescriptor : QueueDescriptorWithParameters<InstanceNormalizationDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct L2NormalizationQueueDescriptor : QueueDescriptorWithParameters<L2NormalizationDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct LogSoftmaxQueueDescriptor : QueueDescriptorWithParameters<LogSoftmaxDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ConstantQueueDescriptor : QueueDescriptor
-{
- ConstantQueueDescriptor()
- : m_LayerOutput(nullptr)
- {
- }
-
- const ConstTensorHandle* m_LayerOutput;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ReshapeQueueDescriptor : QueueDescriptorWithParameters<ReshapeDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct SpaceToBatchNdQueueDescriptor : QueueDescriptorWithParameters<SpaceToBatchNdDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct SpaceToDepthQueueDescriptor : QueueDescriptorWithParameters<SpaceToDepthDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct FloorQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct LstmQueueDescriptor : QueueDescriptorWithParameters<LstmDescriptor>
-{
- LstmQueueDescriptor()
- : m_InputToInputWeights(nullptr)
- , m_InputToForgetWeights(nullptr)
- , m_InputToCellWeights(nullptr)
- , m_InputToOutputWeights(nullptr)
- , m_RecurrentToInputWeights(nullptr)
- , m_RecurrentToForgetWeights(nullptr)
- , m_RecurrentToCellWeights(nullptr)
- , m_RecurrentToOutputWeights(nullptr)
- , m_CellToInputWeights(nullptr)
- , m_CellToForgetWeights(nullptr)
- , m_CellToOutputWeights(nullptr)
- , m_InputGateBias(nullptr)
- , m_ForgetGateBias(nullptr)
- , m_CellBias(nullptr)
- , m_OutputGateBias(nullptr)
- , m_ProjectionWeights(nullptr)
- , m_ProjectionBias(nullptr)
- , m_InputLayerNormWeights(nullptr)
- , m_ForgetLayerNormWeights(nullptr)
- , m_CellLayerNormWeights(nullptr)
- , m_OutputLayerNormWeights(nullptr)
- {
- }
-
- const ConstTensorHandle* m_InputToInputWeights;
- const ConstTensorHandle* m_InputToForgetWeights;
- const ConstTensorHandle* m_InputToCellWeights;
- const ConstTensorHandle* m_InputToOutputWeights;
- const ConstTensorHandle* m_RecurrentToInputWeights;
- const ConstTensorHandle* m_RecurrentToForgetWeights;
- const ConstTensorHandle* m_RecurrentToCellWeights;
- const ConstTensorHandle* m_RecurrentToOutputWeights;
- const ConstTensorHandle* m_CellToInputWeights;
- const ConstTensorHandle* m_CellToForgetWeights;
- const ConstTensorHandle* m_CellToOutputWeights;
- const ConstTensorHandle* m_InputGateBias;
- const ConstTensorHandle* m_ForgetGateBias;
- const ConstTensorHandle* m_CellBias;
- const ConstTensorHandle* m_OutputGateBias;
- const ConstTensorHandle* m_ProjectionWeights;
- const ConstTensorHandle* m_ProjectionBias;
- const ConstTensorHandle* m_InputLayerNormWeights;
- const ConstTensorHandle* m_ForgetLayerNormWeights;
- const ConstTensorHandle* m_CellLayerNormWeights;
- const ConstTensorHandle* m_OutputLayerNormWeights;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ConvertBf16ToFp32QueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ConvertFp32ToBf16QueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ConvertFp16ToFp32QueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ConvertFp32ToFp16QueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct BatchToSpaceNdQueueDescriptor : QueueDescriptorWithParameters<BatchToSpaceNdDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct StridedSliceQueueDescriptor : QueueDescriptorWithParameters<StridedSliceDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Minimum layer workload data.
-struct MinimumQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-// Deprecated use ComparisonQueueDescriptor instead
-struct GreaterQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct DebugQueueDescriptor : QueueDescriptor
-{
- DebugQueueDescriptor() : m_Guid(0) {}
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-
- LayerGuid m_Guid;
- std::string m_LayerName;
- unsigned int m_SlotIndex;
-};
-
-struct RsqrtQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct GatherQueueDescriptor : QueueDescriptorWithParameters<GatherDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct PreCompiledQueueDescriptor : QueueDescriptorWithParameters<PreCompiledDescriptor>
-{
- PreCompiledQueueDescriptor()
- : m_PreCompiledObject(nullptr)
- {
- }
-
- void* m_PreCompiledObject;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct DequantizeQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct MergeQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct SwitchQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct PreluQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct TransposeConvolution2dQueueDescriptor : QueueDescriptorWithParameters<TransposeConvolution2dDescriptor>
-{
- TransposeConvolution2dQueueDescriptor() :
- m_Weight(nullptr),
- m_Bias(nullptr)
- {}
-
- const ConstTensorHandle* m_Weight;
- const ConstTensorHandle* m_Bias;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct TransposeQueueDescriptor : QueueDescriptorWithParameters<TransposeDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct QLstmQueueDescriptor : QueueDescriptorWithParameters<QLstmDescriptor>
-{
- QLstmQueueDescriptor()
- : m_InputToInputWeights(nullptr)
- , m_InputToForgetWeights(nullptr)
- , m_InputToCellWeights(nullptr)
- , m_InputToOutputWeights(nullptr)
- , m_RecurrentToInputWeights(nullptr)
- , m_RecurrentToForgetWeights(nullptr)
- , m_RecurrentToCellWeights(nullptr)
- , m_RecurrentToOutputWeights(nullptr)
- , m_CellToInputWeights(nullptr)
- , m_CellToForgetWeights(nullptr)
- , m_CellToOutputWeights(nullptr)
- , m_InputGateBias(nullptr)
- , m_ForgetGateBias(nullptr)
- , m_CellBias(nullptr)
- , m_OutputGateBias(nullptr)
- , m_ProjectionWeights(nullptr)
- , m_ProjectionBias(nullptr)
- , m_InputLayerNormWeights(nullptr)
- , m_ForgetLayerNormWeights(nullptr)
- , m_CellLayerNormWeights(nullptr)
- , m_OutputLayerNormWeights(nullptr)
- {
- }
-
- const ConstTensorHandle* m_InputToInputWeights;
- const ConstTensorHandle* m_InputToForgetWeights;
- const ConstTensorHandle* m_InputToCellWeights;
- const ConstTensorHandle* m_InputToOutputWeights;
- const ConstTensorHandle* m_RecurrentToInputWeights;
- const ConstTensorHandle* m_RecurrentToForgetWeights;
- const ConstTensorHandle* m_RecurrentToCellWeights;
- const ConstTensorHandle* m_RecurrentToOutputWeights;
- const ConstTensorHandle* m_CellToInputWeights;
- const ConstTensorHandle* m_CellToForgetWeights;
- const ConstTensorHandle* m_CellToOutputWeights;
- const ConstTensorHandle* m_InputGateBias;
- const ConstTensorHandle* m_ForgetGateBias;
- const ConstTensorHandle* m_CellBias;
- const ConstTensorHandle* m_OutputGateBias;
- const ConstTensorHandle* m_ProjectionWeights;
- const ConstTensorHandle* m_ProjectionBias;
- const ConstTensorHandle* m_InputLayerNormWeights;
- const ConstTensorHandle* m_ForgetLayerNormWeights;
- const ConstTensorHandle* m_CellLayerNormWeights;
- const ConstTensorHandle* m_OutputLayerNormWeights;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct QuantizedLstmQueueDescriptor : QueueDescriptor
-{
- QuantizedLstmQueueDescriptor()
- : m_InputToInputWeights(nullptr)
- , m_InputToForgetWeights(nullptr)
- , m_InputToCellWeights(nullptr)
- , m_InputToOutputWeights(nullptr)
-
- , m_RecurrentToInputWeights(nullptr)
- , m_RecurrentToForgetWeights(nullptr)
- , m_RecurrentToCellWeights(nullptr)
- , m_RecurrentToOutputWeights(nullptr)
-
- , m_InputGateBias(nullptr)
- , m_ForgetGateBias(nullptr)
- , m_CellBias(nullptr)
- , m_OutputGateBias(nullptr)
- {}
-
- const ConstTensorHandle* m_InputToInputWeights;
- const ConstTensorHandle* m_InputToForgetWeights;
- const ConstTensorHandle* m_InputToCellWeights;
- const ConstTensorHandle* m_InputToOutputWeights;
-
- const ConstTensorHandle* m_RecurrentToInputWeights;
- const ConstTensorHandle* m_RecurrentToForgetWeights;
- const ConstTensorHandle* m_RecurrentToCellWeights;
- const ConstTensorHandle* m_RecurrentToOutputWeights;
-
- const ConstTensorHandle* m_InputGateBias;
- const ConstTensorHandle* m_ForgetGateBias;
- const ConstTensorHandle* m_CellBias;
- const ConstTensorHandle* m_OutputGateBias;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct AbsQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct SliceQueueDescriptor : QueueDescriptorWithParameters<SliceDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct DepthToSpaceQueueDescriptor : QueueDescriptorWithParameters<DepthToSpaceDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ComparisonQueueDescriptor : QueueDescriptorWithParameters<ComparisonDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ElementwiseUnaryQueueDescriptor : QueueDescriptorWithParameters<ElementwiseUnaryDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct LogicalBinaryQueueDescriptor : QueueDescriptorWithParameters<LogicalBinaryDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ReduceQueueDescriptor : QueueDescriptorWithParameters<ReduceDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ShapeQueueDescriptor : QueueDescriptor
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct UnidirectionalSequenceLstmQueueDescriptor : QueueDescriptorWithParameters<LstmDescriptor>
-{
- UnidirectionalSequenceLstmQueueDescriptor()
- : m_InputToInputWeights(nullptr)
- , m_InputToForgetWeights(nullptr)
- , m_InputToCellWeights(nullptr)
- , m_InputToOutputWeights(nullptr)
- , m_RecurrentToInputWeights(nullptr)
- , m_RecurrentToForgetWeights(nullptr)
- , m_RecurrentToCellWeights(nullptr)
- , m_RecurrentToOutputWeights(nullptr)
- , m_CellToInputWeights(nullptr)
- , m_CellToForgetWeights(nullptr)
- , m_CellToOutputWeights(nullptr)
- , m_InputGateBias(nullptr)
- , m_ForgetGateBias(nullptr)
- , m_CellBias(nullptr)
- , m_OutputGateBias(nullptr)
- , m_ProjectionWeights(nullptr)
- , m_ProjectionBias(nullptr)
- , m_InputLayerNormWeights(nullptr)
- , m_ForgetLayerNormWeights(nullptr)
- , m_CellLayerNormWeights(nullptr)
- , m_OutputLayerNormWeights(nullptr)
- {
- }
-
- const ConstTensorHandle* m_InputToInputWeights;
- const ConstTensorHandle* m_InputToForgetWeights;
- const ConstTensorHandle* m_InputToCellWeights;
- const ConstTensorHandle* m_InputToOutputWeights;
- const ConstTensorHandle* m_RecurrentToInputWeights;
- const ConstTensorHandle* m_RecurrentToForgetWeights;
- const ConstTensorHandle* m_RecurrentToCellWeights;
- const ConstTensorHandle* m_RecurrentToOutputWeights;
- const ConstTensorHandle* m_CellToInputWeights;
- const ConstTensorHandle* m_CellToForgetWeights;
- const ConstTensorHandle* m_CellToOutputWeights;
- const ConstTensorHandle* m_InputGateBias;
- const ConstTensorHandle* m_ForgetGateBias;
- const ConstTensorHandle* m_CellBias;
- const ConstTensorHandle* m_OutputGateBias;
- const ConstTensorHandle* m_ProjectionWeights;
- const ConstTensorHandle* m_ProjectionBias;
- const ConstTensorHandle* m_InputLayerNormWeights;
- const ConstTensorHandle* m_ForgetLayerNormWeights;
- const ConstTensorHandle* m_CellLayerNormWeights;
- const ConstTensorHandle* m_OutputLayerNormWeights;
-
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-struct ChannelShuffleQueueDescriptor : QueueDescriptorWithParameters<ChannelShuffleDescriptor>
-{
- void Validate(const WorkloadInfo& workloadInfo) const;
-};
-
-} // namespace armnn
+#include <armnn/backends/WorkloadData.hpp>
+#pragma message("src/backends/backendsCommon/WorkloadData.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use public interface include/armnn/backends/WorkloadData.hpp")
diff --git a/src/backends/backendsCommon/WorkloadFactory.cpp b/src/backends/backendsCommon/WorkloadFactory.cpp
index 93932a83a1..9c47a19208 100644
--- a/src/backends/backendsCommon/WorkloadFactory.cpp
+++ b/src/backends/backendsCommon/WorkloadFactory.cpp
@@ -15,10 +15,8 @@
#include <armnn/utility/PolymorphicDowncast.hpp>
#include <armnn/utility/TransformIterator.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
-#include <backendsCommon/TensorHandle.hpp>
-
-//#include <WorkloadTestUtils.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <sstream>
diff --git a/src/backends/backendsCommon/WorkloadFactory.hpp b/src/backends/backendsCommon/WorkloadFactory.hpp
index d624d1b3df..0300c7f1c8 100644
--- a/src/backends/backendsCommon/WorkloadFactory.hpp
+++ b/src/backends/backendsCommon/WorkloadFactory.hpp
@@ -1,289 +1,8 @@
//
-// Copyright © 2017 Arm Ltd. All rights reserved.
+// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
-#pragma once
-#include <armnn/TensorFwd.hpp>
-#include <armnn/Optional.hpp>
-#include <armnn/backends/ITensorHandle.hpp>
-#include <armnn/INetwork.hpp>
-
-#include <backendsCommon/Workload.hpp>
-
-#include <memory>
-
-namespace armnn
-{
-
-class Layer;
-
-// Workload factory interface for compute backends.
-class IWorkloadFactory
-{
-public:
- virtual ~IWorkloadFactory() { }
-
- virtual void AfterWorkloadsCreated() {};
-
- virtual const BackendId& GetBackendId() const = 0;
-
- static bool IsLayerSupported(const BackendId& backendId,
- const IConnectableLayer& layer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported);
-
- static bool IsLayerSupported(const IConnectableLayer& layer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported);
-
- static bool IsLayerSupported(const IConnectableLayer& layer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported,
- const ModelOptions& modelOptions);
-
- static bool IsLayerSupported(const BackendId& backendId,
- const IConnectableLayer& layer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported,
- const ModelOptions& modelOptions);
-
- virtual bool SupportsSubTensors() const = 0;
-
- ARMNN_DEPRECATED_MSG("Use ITensorHandleFactory::CreateSubTensorHandle instead")
- virtual std::unique_ptr<ITensorHandle> CreateSubTensorHandle(ITensorHandle& parent,
- TensorShape const& subTensorShape,
- unsigned int const* subTensorOrigin
- ) const = 0;
-
- virtual std::unique_ptr<IWorkload> CreateInput(const InputQueueDescriptor& descriptor,
- const WorkloadInfo& info) const = 0;
-
- ARMNN_DEPRECATED_MSG("Use ITensorHandleFactory::CreateTensorHandle instead")
- virtual std::unique_ptr<ITensorHandle> CreateTensorHandle(const TensorInfo& tensorInfo,
- const bool IsMemoryManaged = true) const = 0;
-
- ARMNN_DEPRECATED_MSG("Use ITensorHandleFactory::CreateTensorHandle instead")
- virtual std::unique_ptr<ITensorHandle> CreateTensorHandle(const TensorInfo& tensorInfo,
- DataLayout dataLayout,
- const bool IsMemoryManaged = true) const = 0;
-
- virtual std::unique_ptr<IWorkload> CreateActivation(const ActivationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateAddition(const AdditionQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateArgMinMax(const ArgMinMaxQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateBatchNormalization(const BatchNormalizationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateBatchToSpaceNd(const BatchToSpaceNdQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateCast(const CastQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateChannelShuffle(const ChannelShuffleQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateComparison(const ComparisonQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConcat(const ConcatQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConstant(const ConstantQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvertBf16ToFp32(const ConvertBf16ToFp32QueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvertFp16ToFp32(const ConvertFp16ToFp32QueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvertFp32ToBf16(const ConvertFp32ToBf16QueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvertFp32ToFp16(const ConvertFp32ToFp16QueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvolution2d(const Convolution2dQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateConvolution3d(const Convolution3dQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDebug(const DebugQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDepthToSpace(const DepthToSpaceQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDepthwiseConvolution2d(
- const DepthwiseConvolution2dQueueDescriptor& descriptor, const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDequantize(const DequantizeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDetectionPostProcess(
- const DetectionPostProcessQueueDescriptor& descriptor, const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateDivision(const DivisionQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateElementwiseUnary(const ElementwiseUnaryQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateFakeQuantization(const FakeQuantizationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateFill(const FillQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateFloor(const FloorQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateFullyConnected(const FullyConnectedQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateGather(const GatherQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateInstanceNormalization(
- const InstanceNormalizationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateL2Normalization(const L2NormalizationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateLogicalBinary(const LogicalBinaryQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateLogicalUnary(const ElementwiseUnaryQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateLogSoftmax(const LogSoftmaxQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateLstm(const LstmQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMaximum(const MaximumQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMean(const MeanQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMemCopy(const MemCopyQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMemImport(const MemImportQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMerge(const MergeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMinimum(const MinimumQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateMultiplication(const MultiplicationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateNormalization(const NormalizationQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateOutput(const OutputQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePad(const PadQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePermute(const PermuteQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePooling2d(const Pooling2dQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePooling3d(const Pooling3dQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePreCompiled(const PreCompiledQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreatePrelu(const PreluQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateQuantize(const QuantizeQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateQLstm(const QLstmQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateQuantizedLstm(const QuantizedLstmQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateRank(const RankQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateReduce(const ReduceQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateReshape(const ReshapeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateResize(const ResizeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateShape(const ShapeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSlice(const SliceQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSoftmax(const SoftmaxQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSpaceToBatchNd(const SpaceToBatchNdQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSpaceToDepth(const SpaceToDepthQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSubtraction(const SubtractionQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSplitter(const SplitterQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateStack(const StackQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateStridedSlice(const StridedSliceQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateSwitch(const SwitchQueueDescriptor& descriptor,
- const WorkloadInfo& Info) const;
-
- virtual std::unique_ptr<IWorkload> CreateTranspose(const TransposeQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateTransposeConvolution2d(
- const TransposeConvolution2dQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
- virtual std::unique_ptr<IWorkload> CreateUnidirectionalSequenceLstm(
- const UnidirectionalSequenceLstmQueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
-
-private:
- static bool IsLayerConfigurationSupported(const BackendId& backendId,
- const IConnectableLayer& connectableLayer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported,
- const ModelOptions& modelOptions = {});
-};
-
-} // namespace armnn
+#include <armnn/backends/WorkloadFactory.hpp>
+#pragma message("src/backends/backendsCommon/WorkloadFactory.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use public interface include/armnn/backends/WorkloadFactory.hpp")
diff --git a/src/backends/backendsCommon/WorkloadFactoryBase.hpp b/src/backends/backendsCommon/WorkloadFactoryBase.hpp
index 4a67df5bb4..42a506afe0 100644
--- a/src/backends/backendsCommon/WorkloadFactoryBase.hpp
+++ b/src/backends/backendsCommon/WorkloadFactoryBase.hpp
@@ -5,7 +5,7 @@
#pragma once
-#include "WorkloadFactory.hpp"
+#include <armnn/backends/WorkloadFactory.hpp>
namespace armnn
{
diff --git a/src/backends/backendsCommon/WorkloadUtils.hpp b/src/backends/backendsCommon/WorkloadUtils.hpp
index d2f9ca5862..2f1c5c47f0 100644
--- a/src/backends/backendsCommon/WorkloadUtils.hpp
+++ b/src/backends/backendsCommon/WorkloadUtils.hpp
@@ -5,9 +5,8 @@
#pragma once
-#include "TensorHandle.hpp"
-
#include <armnn/backends/ITensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/Tensor.hpp>
#include <armnn/utility/PolymorphicDowncast.hpp>
#include <armnnUtils/Permute.hpp>
diff --git a/src/backends/backendsCommon/test/ActivationFixture.hpp b/src/backends/backendsCommon/test/ActivationFixture.hpp
index caa67aca37..446c77b1f9 100644
--- a/src/backends/backendsCommon/test/ActivationFixture.hpp
+++ b/src/backends/backendsCommon/test/ActivationFixture.hpp
@@ -5,7 +5,7 @@
#pragma once
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <armnn/utility/NumericCast.hpp>
diff --git a/src/backends/backendsCommon/test/CommonTestUtils.hpp b/src/backends/backendsCommon/test/CommonTestUtils.hpp
index 72e3860ecb..963d5de728 100644
--- a/src/backends/backendsCommon/test/CommonTestUtils.hpp
+++ b/src/backends/backendsCommon/test/CommonTestUtils.hpp
@@ -3,10 +3,6 @@
// SPDX-License-Identifier: MIT
//
-// This file is deprecated and will be removed soon.
-// Please use the new header in armnnTestUtils instead.
-// This will use the new armnnTestUtils header.
-#include "../../../armnnTestUtils/CommonTestUtils.hpp"
-
+#include "../../armnnTestUtils/CommonTestUtils.hpp"
#pragma message("backendsCommon/test/CommonTestUtils.hpp has been deprecated, it is due for removal in 22.08 release." \
- " Please use from armnnTestUtils library, /src/armnnTestUtils/CommonTestUtils.hpp) \ No newline at end of file
+ " Please use from armnnTestUtils library, /src/armnnTestUtils/CommonTestUtils.hpp)
diff --git a/src/backends/backendsCommon/test/DefaultAsyncExecuteTest.cpp b/src/backends/backendsCommon/test/DefaultAsyncExecuteTest.cpp
index 0a4c29b56d..7070c1fad9 100644
--- a/src/backends/backendsCommon/test/DefaultAsyncExecuteTest.cpp
+++ b/src/backends/backendsCommon/test/DefaultAsyncExecuteTest.cpp
@@ -5,8 +5,8 @@
#include <armnn/Exceptions.hpp>
-#include <backendsCommon/TensorHandle.hpp>
-#include <backendsCommon/Workload.hpp>
+#include <armnn/backends/TensorHandle.hpp>
+#include <armnn/backends/Workload.hpp>
#include <doctest/doctest.h>
diff --git a/src/backends/backendsCommon/test/DynamicBackendTests.hpp b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
index 0d9d3dd31b..1782fa44f6 100644
--- a/src/backends/backendsCommon/test/DynamicBackendTests.hpp
+++ b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
@@ -10,7 +10,7 @@
#include <armnn/backends/ILayerSupport.hpp>
#include <armnn/utility/PolymorphicDowncast.hpp>
#include <backendsCommon/DynamicBackendUtils.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnUtils/Filesystem.hpp>
#include <reference/workloads/RefConvolution2dWorkload.hpp>
#include <Runtime.hpp>
diff --git a/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp b/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
index aa55557ca4..bc5e335a93 100644
--- a/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
+++ b/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
@@ -8,7 +8,7 @@
#include <backendsCommon/MapWorkload.hpp>
#include <backendsCommon/UnmapWorkload.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnn/utility/IgnoreUnused.hpp>
diff --git a/src/backends/backendsCommon/test/LayerReleaseConstantDataTest.cpp b/src/backends/backendsCommon/test/LayerReleaseConstantDataTest.cpp
index f55a3c31ce..56f15a51e5 100644
--- a/src/backends/backendsCommon/test/LayerReleaseConstantDataTest.cpp
+++ b/src/backends/backendsCommon/test/LayerReleaseConstantDataTest.cpp
@@ -7,8 +7,8 @@
#include <Graph.hpp>
-#include <backendsCommon/TensorHandle.hpp>
-#include <backendsCommon/WorkloadData.hpp>
+#include <armnn/backends/TensorHandle.hpp>
+#include <armnn/backends/WorkloadData.hpp>
#include <doctest/doctest.h>
diff --git a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
index ee632ff41b..119f8744d3 100644
--- a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
+++ b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
@@ -3,12 +3,12 @@
// SPDX-License-Identifier: MIT
//
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <armnn/Exceptions.hpp>
-#include <backendsCommon/TensorHandle.hpp>
-#include <backendsCommon/Workload.hpp>
+#include <armnn/backends/TensorHandle.hpp>
+#include <armnn/backends/Workload.hpp>
#include <reference/workloads/RefWorkloads.hpp>
#include <reference/RefWorkloadFactory.hpp>
diff --git a/src/backends/backendsCommon/test/WorkloadTestUtils.hpp b/src/backends/backendsCommon/test/WorkloadTestUtils.hpp
index cb605af2d3..cdd028cc6b 100644
--- a/src/backends/backendsCommon/test/WorkloadTestUtils.hpp
+++ b/src/backends/backendsCommon/test/WorkloadTestUtils.hpp
@@ -3,7 +3,6 @@
// SPDX-License-Identifier: MIT
//
-// This file is deprecated and will be removed soon.
-// Please use the new header in armnnTestUtils instead.
-// This will use the new armnnTestUtils header.
#include "../../../armnnTestUtils/WorkloadTestUtils.hpp"
+#pragma message("src/backends/backendsCommon/test/WorkloadTestUtils.hpp has been deprecated, it is due for removal in"\
+ " 22.08 release. Please use src/armnnTestUtils/WorkloadTestUtils.hpp instead.")
diff --git a/src/backends/backendsCommon/test/layerTests/AbsTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/AbsTestImpl.hpp
index 7f2d1be972..afde32889b 100644
--- a/src/backends/backendsCommon/test/layerTests/AbsTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/AbsTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Abs2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
index 5ec8e13430..57687051b6 100644
--- a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
@@ -10,7 +10,7 @@
#include <backendsCommon/test/ActivationFixture.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <reference/test/RefWorkloadFactoryHelper.hpp>
#include <armnn/utility/NumericCast.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.hpp
index 9e8b3a2b29..e23cd32583 100644
--- a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
//
// Sigmoid
diff --git a/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.hpp
index a66d474f22..75684797c2 100644
--- a/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> AdditionTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
index 4f82b599f2..e98708fd02 100644
--- a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
@@ -8,7 +8,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.hpp
index 941470590a..b850af39f0 100644
--- a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<int32_t, 3> ArgMaxSimpleTest(armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
index 90bc8d76c1..b4414050e7 100644
--- a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
@@ -11,13 +11,13 @@
#include <armnn/utility/IgnoreUnused.hpp>
#include <armnnUtils/DataLayoutIndexed.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <reference/test/RefWorkloadFactoryHelper.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp
index 11bc2973a2..87d0760471 100644
--- a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> BatchNormFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
index 19d472bb0f..23e790f15a 100644
--- a/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
@@ -8,13 +8,13 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
#include <DataTypeUtils.hpp>
#include <TensorHelpers.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
namespace
{
diff --git a/src/backends/backendsCommon/test/layerTests/CastTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/CastTestImpl.hpp
index 556909860e..a727950bb8 100644
--- a/src/backends/backendsCommon/test/layerTests/CastTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/CastTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <Half.hpp>
template<armnn::DataType inputDataType, armnn::DataType outputDataType,
diff --git a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
index 598f205694..08a68cc04c 100644
--- a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
namespace
{
diff --git a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.hpp
index 9c5f40d550..d3498f0506 100644
--- a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> SimpleChannelShuffleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
index 5eccd011f6..2640c329b3 100644
--- a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
@@ -10,11 +10,11 @@
#include <QuantizeHelper.hpp>
#include <ResolveType.hpp>
-#include <backendsCommon/Workload.hpp>
-#include <backendsCommon/WorkloadData.hpp>
+#include <armnn/backends/Workload.hpp>
+#include <armnn/backends/WorkloadData.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp
index 8a920e5f5f..6ac28ecd0e 100644
--- a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
// Equal
LayerTestResult<uint8_t, 4> EqualSimpleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
index 52387298c6..8fbd3e39d8 100644
--- a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
@@ -12,7 +12,7 @@
#include <armnnUtils/Permute.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp
index c91ee86cf9..99adcea9f5 100644
--- a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp
@@ -12,7 +12,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 3> ConcatDifferentInputOutputQParamTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
index dd339badb2..f7d84157ad 100644
--- a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
@@ -11,10 +11,10 @@
#include <armnnUtils/Permute.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp
index 34491b1c76..99cd317298 100644
--- a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> ConstantTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
index 61e000a891..0982d01e2e 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
@@ -13,11 +13,11 @@
#include <armnnUtils/DataLayoutIndexed.hpp>
#include <armnnUtils/Permute.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp
index f54a6f85f5..70e43c8555 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp
@@ -12,7 +12,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
//
// Convolution2d
diff --git a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
index 4adc6ef63f..45cf48b40e 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
@@ -9,11 +9,11 @@
#include <armnnUtils/DataLayoutIndexed.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.hpp
index 127e7ef883..e17a9193d4 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.hpp
@@ -14,7 +14,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
//
// Convolution3d
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
index 7699daa21d..e4ba0b8c0b 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
@@ -6,7 +6,7 @@
#include "ConvertBf16ToFp32TestImpl.hpp"
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp
index db92d42aca..bcb0d6f124 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp
@@ -10,7 +10,7 @@
#include <BFloat16.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> ConvertBf16ToFp32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
index 2c1f9b9407..74c03d939b 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
@@ -9,7 +9,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp
index 9e64cdd823..95d2a6194c 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> SimpleConvertFp16ToFp32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
index 14a75c13de..667fd29c24 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
@@ -6,7 +6,7 @@
#include "ConvertFp32ToBf16TestImpl.hpp"
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp
index 737181def1..c2286d9c41 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp
@@ -10,7 +10,7 @@
#include <BFloat16.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<armnn::BFloat16, 4> ConvertFp32ToBf16Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
index 8210b2d2d1..13dde067b0 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
@@ -7,7 +7,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp
index 8b6617c8ef..409353c99e 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<armnn::Half, 4> SimpleConvertFp32ToFp16Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
index 5475dbfae7..2938489d63 100644
--- a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
@@ -10,7 +10,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.hpp
index beab583cab..ac068e8939 100644
--- a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.hpp
@@ -10,7 +10,7 @@
#include <BFloat16.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> Debug4dFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
index be88e77456..ee4f1b3660 100644
--- a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
@@ -10,7 +10,7 @@
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.hpp
index c6781a99c3..0cb96fc4a1 100644
--- a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.hpp
@@ -9,7 +9,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> DepthToSpaceTest1(
diff --git a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
index 61fb4078c4..98bf74f833 100644
--- a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
@@ -9,7 +9,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.hpp
index 8f120d3b03..b965dec284 100644
--- a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <Half.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
index b9f06deaa1..52aacad38c 100644
--- a/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
@@ -8,13 +8,13 @@
#include <armnn/Types.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
#include <backendsCommon/test/WorkloadFactoryHelper.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.hpp
index b5d04e5f43..d4a66af2be 100644
--- a/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> DivisionByZeroTest(
armnn::IWorkloadFactory& workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
diff --git a/src/backends/backendsCommon/test/layerTests/ElementwiseTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ElementwiseTestImpl.hpp
index 3175aaf4c3..1d42e2096f 100644
--- a/src/backends/backendsCommon/test/layerTests/ElementwiseTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ElementwiseTestImpl.hpp
@@ -11,13 +11,13 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/Workload.hpp>
-#include <backendsCommon/WorkloadData.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/Workload.hpp>
+#include <armnn/backends/WorkloadData.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.hpp
index a15add049f..01aff65170 100644
--- a/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.hpp
@@ -12,13 +12,13 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/Workload.hpp>
-#include <backendsCommon/WorkloadData.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/Workload.hpp>
+#include <armnn/backends/WorkloadData.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ExpTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ExpTestImpl.hpp
index c7008a744f..5504c1e8be 100644
--- a/src/backends/backendsCommon/test/layerTests/ExpTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ExpTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Exp2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
index f433f9dd17..613f8b7f6a 100644
--- a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
@@ -6,10 +6,10 @@
#include "FakeQuantizationTestImpl.hpp"
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.hpp
index d8af8c561e..9591b0ede5 100644
--- a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 2> FakeQuantizationTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
index 41fcf59ba8..fae2691af7 100644
--- a/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/FillTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/FillTestImpl.hpp
index beaf35c050..973ab1f82a 100644
--- a/src/backends/backendsCommon/test/layerTests/FillTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/FillTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> SimpleFillTest(
diff --git a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
index c05e1d833e..527b0dbd13 100644
--- a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.hpp
index ff25252d14..f4c7cfbe18 100644
--- a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> SimpleFloorTest(
diff --git a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
index 59e67febdf..9361f4d2b3 100644
--- a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
@@ -8,11 +8,11 @@
#include <QuantizeHelper.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.hpp
index 76cea90c04..759a908a34 100644
--- a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> FullyConnectedTest(
diff --git a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
index edcc900f5e..ad81968b71 100644
--- a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
@@ -9,7 +9,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.hpp
index 363478dd30..92b63e50b5 100644
--- a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 1> Gather1dParamsFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
index da9608c122..9de7df7029 100644
--- a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
@@ -9,13 +9,13 @@
#include <ResolveType.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.hpp
index be771441a2..9637673838 100644
--- a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.hpp
@@ -12,7 +12,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> InstanceNormFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
index 67f1c3c221..f7566fd014 100644
--- a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
@@ -12,7 +12,7 @@
#include <armnnUtils/Permute.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.hpp
index 283a25b187..3c30201202 100644
--- a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.hpp
@@ -10,7 +10,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> L2NormalizationDefaultEpsilonTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
index 94f5a5be1c..016d143e35 100644
--- a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
@@ -10,12 +10,12 @@
#include <ResolveType.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.hpp
index b293337554..bc329d2b18 100644
--- a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> LogSoftmaxTest1(
diff --git a/src/backends/backendsCommon/test/layerTests/LogTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/LogTestImpl.hpp
index cf9878f592..597d02ea12 100644
--- a/src/backends/backendsCommon/test/layerTests/LogTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/LogTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Log2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
index a2ce5af2f3..d2fa2bd6f7 100644
--- a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
@@ -8,11 +8,11 @@
#include <armnn/utility/Assert.hpp>
#include <ResolveType.hpp>
-#include <backendsCommon/Workload.hpp>
-#include <backendsCommon/WorkloadData.hpp>
+#include <armnn/backends/Workload.hpp>
+#include <armnn/backends/WorkloadData.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp
index b81d2f38a1..271680747d 100644
--- a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
// Unary - Logical Not
LayerTestResult<uint8_t, 4> LogicalNotTest(
diff --git a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
index 56bc23cf9c..c04e97bb0f 100644
--- a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
@@ -9,10 +9,10 @@
#include <armnn/utility/NumericCast.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <reference/workloads/Decoders.hpp>
#include <reference/workloads/Encoders.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.hpp
index 62bb125519..3228ea8645 100644
--- a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#if defined(ARMNNREF_ENABLED)
void LstmUtilsZeroVectorTest();
diff --git a/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.hpp
index c13059b445..3f88c707e8 100644
--- a/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> MaximumSimpleTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
index 9cc45e2e69..29dba2f152 100644
--- a/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
namespace
{
diff --git a/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.hpp
index bd60b20af0..126193d59b 100644
--- a/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> MinimumBroadcast1ElementTest1(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
index 60fbfb0548..2647bb976f 100644
--- a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
@@ -8,7 +8,7 @@
#include <QuantizeHelper.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.hpp
index 60475fdeb8..7b94f62492 100644
--- a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.hpp
@@ -14,7 +14,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 2> PadSymmetric2dFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.hpp
index 72154dbc33..0aee77c8e1 100644
--- a/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> MultiplicationTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/NegTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/NegTestImpl.hpp
index 0296ca2993..9c84b901a2 100644
--- a/src/backends/backendsCommon/test/layerTests/NegTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/NegTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Neg2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
index e3a3bea798..4f2add51ff 100644
--- a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
@@ -10,10 +10,10 @@
#include <armnn/utility/NumericCast.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.hpp
index 30cd57ca05..c304a250da 100644
--- a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.hpp
@@ -10,7 +10,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> SimpleNormalizationAcrossTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
index 628eed04b0..ab2ef24a2b 100644
--- a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
@@ -8,7 +8,7 @@
#include <QuantizeHelper.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/PadTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/PadTestImpl.hpp
index 1d19aa84ff..b62fc78ba3 100644
--- a/src/backends/backendsCommon/test/layerTests/PadTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/PadTestImpl.hpp
@@ -12,7 +12,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Pad2dTestCommon(
diff --git a/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
index 26fb5044b1..fb55f08c54 100644
--- a/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
@@ -9,9 +9,9 @@
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
index 7bb0e59547..248f9726a1 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
@@ -20,7 +20,7 @@
#include <backendsCommon/WorkloadInfo.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.hpp
index 0a25339ff5..eb29870fa4 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.hpp
@@ -10,7 +10,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> SimpleMaxPooling2dSize2x2Stride2x2Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
index ad438eaf6e..3befc7c585 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
@@ -20,7 +20,7 @@
#include <backendsCommon/WorkloadInfo.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp
index 6c1d5defff..8ad8111961 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp
@@ -10,7 +10,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 5> SimpleMaxPooling3dSize2x2x2Stride1x1x1Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
index 6b9aaed742..a74be62b66 100644
--- a/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
@@ -12,11 +12,11 @@
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
#include <backendsCommon/test/WorkloadFactoryHelper.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
index b593620326..5878ec8d9b 100644
--- a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
@@ -9,10 +9,10 @@
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.hpp
index 967155061d..04f46e4e3d 100644
--- a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<uint8_t, 4> QuantizeSimpleUint8Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
index c04d7b2e82..ef45eec8c5 100644
--- a/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/RankTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/RankTestImpl.hpp
index 27b0fcc609..ebc9893a73 100644
--- a/src/backends/backendsCommon/test/layerTests/RankTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/RankTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<typename T , std::size_t n>
LayerTestResult<int32_t, 1> RankTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
index b93eb55104..a8b1fda8dc 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.hpp
index 4d7ddde92c..9ab2d874e6 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<float, 4> ReduceProdSimpleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
index c50fe75394..acb2990c98 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.hpp
index a5249b41da..283f0dfec4 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<float, 4> ReduceSumSimpleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
index a69afb8438..47cb1d730a 100644
--- a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.hpp
index 14809353d7..76dfbf084a 100644
--- a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<float, 4> ReduceMaxSimpleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
index ccf234588a..ae9280b10f 100644
--- a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.hpp
index c692c95bc7..f79d13ac88 100644
--- a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> SimpleReshapeTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
index aa5bbae8d7..1773809d70 100644
--- a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
@@ -14,7 +14,7 @@
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.hpp
index bbbe861658..5f600d93ef 100644
--- a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.hpp
@@ -12,7 +12,7 @@
#include <armnn/Types.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
// Bilinear
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
diff --git a/src/backends/backendsCommon/test/layerTests/RsqrtTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/RsqrtTestImpl.hpp
index 33d965bdac..54748e8adc 100644
--- a/src/backends/backendsCommon/test/layerTests/RsqrtTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/RsqrtTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Rsqrt2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
index 3ebb5236bc..5aa3b7ca24 100644
--- a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
@@ -7,7 +7,7 @@
#include <DataTypeUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.hpp
index 8b95aa50c3..44cfe18f21 100644
--- a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<typename T , std::size_t n>
LayerTestResult<int32_t, 1> ShapeTest(
diff --git a/src/backends/backendsCommon/test/layerTests/SinTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SinTestImpl.hpp
index ee7bcb94ac..eb772c2f5d 100644
--- a/src/backends/backendsCommon/test/layerTests/SinTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SinTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 2> Sin2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
index ddf216dec0..32abf35576 100644
--- a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
@@ -10,7 +10,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.hpp
index c4d62ccd71..40c153c79a 100644
--- a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
// Float32 tests
LayerTestResult<float, 4> Slice4dFloat32Test(armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
index 05c4784bfb..e8b4ee5af3 100644
--- a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
@@ -9,10 +9,10 @@
#include <ResolveType.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.hpp
index 9f93c025b3..4e070e1fb9 100644
--- a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 2> SimpleSoftmaxTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
index 69f5f5aae4..fe6aa70b87 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
@@ -12,7 +12,7 @@
#include <armnnUtils/Permute.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp
index 1f446b7b41..7768b162f2 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp
@@ -9,7 +9,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> SpaceToBatchNdSimpleFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
index d8c5747917..0080bb6243 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
@@ -12,7 +12,7 @@
#include <armnnUtils/Permute.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.hpp
index 5a3e4934ef..0c460cdcad 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.hpp
@@ -9,7 +9,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<uint8_t, 4> SpaceToDepthNchwAsymmQ8Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
index bf95a9fec8..cfb6a1f9c7 100644
--- a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
@@ -10,7 +10,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.hpp
index dc76bc9233..53475072d9 100644
--- a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.hpp
@@ -8,7 +8,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <vector>
diff --git a/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
index 2a0e049937..5250c3af73 100644
--- a/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
@@ -10,10 +10,10 @@
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/StackTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/StackTestImpl.hpp
index 24e88c4f24..96728cf975 100644
--- a/src/backends/backendsCommon/test/layerTests/StackTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/StackTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> StackAxis0Float32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
index 72ba681c7d..b4818bb12b 100644
--- a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
@@ -10,7 +10,7 @@
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.hpp
index 3806d33cae..e53f439da5 100644
--- a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> StridedSlice4dFloat32Test(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.hpp
index eba0d0ab85..612b2f4726 100644
--- a/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.hpp
@@ -10,7 +10,7 @@
#include <Half.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 4> SubtractionTest(
armnn::IWorkloadFactory& workloadFactory,
diff --git a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
index 34abc86400..95687e3c25 100644
--- a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
@@ -10,11 +10,11 @@
#include <armnnUtils/Permute.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/DataLayoutUtils.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <reference/RefWorkloadFactory.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.hpp
index 6af9e32dec..0ea459dd67 100644
--- a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.hpp
@@ -10,7 +10,7 @@
#include <ResolveType.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult<T, 4> SimpleTransposeConvolution2dTest(
diff --git a/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
index dceb386b31..82bd487d3c 100644
--- a/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
@@ -9,10 +9,10 @@
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
#include <backendsCommon/test/WorkloadFactoryHelper.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <TensorHelpers.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
index 5315dd3685..e6b50f614a 100644
--- a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
@@ -7,10 +7,10 @@
#include <armnn/utility/NumericCast.hpp>
-#include <backendsCommon/TensorHandle.hpp>
+#include <armnn/backends/TensorHandle.hpp>
#include <armnnTestUtils/TensorCopyUtils.hpp>
-#include <WorkloadTestUtils.hpp>
+#include <armnnTestUtils/WorkloadTestUtils.hpp>
#include <ResolveType.hpp>
diff --git a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.hpp
index 88b09b9606..3a1d178ccb 100644
--- a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.hpp
@@ -8,7 +8,7 @@
#include <armnnTestUtils/LayerTestResult.hpp>
#include <armnn/backends/IBackendInternal.hpp>
-#include <backendsCommon/WorkloadFactory.hpp>
+#include <armnn/backends/WorkloadFactory.hpp>
LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerFloat32Test(
armnn::IWorkloadFactory& workloadFactory,