aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/backendsCommon/test')
-rw-r--r--src/backends/backendsCommon/test/DynamicBackendTests.hpp4
-rw-r--r--src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/WorkloadDataValidation.cpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp21
-rw-r--r--src/backends/backendsCommon/test/layerTests/AdditionTestImpl.cpp21
-rw-r--r--src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp12
-rw-r--r--src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/CastTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp17
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp44
-rw-r--r--src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/DivisionTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp3
-rw-r--r--src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp8
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp18
-rw-r--r--src/backends/backendsCommon/test/layerTests/MaximumTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MinimumTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp12
-rw-r--r--src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.cpp8
-rw-r--r--src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp18
-rw-r--r--src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp16
-rw-r--r--src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp10
-rw-r--r--src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp10
-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/RankTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp8
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp12
-rw-r--r--src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.cpp2
-rw-r--r--src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp6
-rw-r--r--src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp4
-rw-r--r--src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp30
65 files changed, 291 insertions, 136 deletions
diff --git a/src/backends/backendsCommon/test/DynamicBackendTests.hpp b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
index 1782fa44f6..6c37d18042 100644
--- a/src/backends/backendsCommon/test/DynamicBackendTests.hpp
+++ b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
@@ -1474,7 +1474,9 @@ void CreateReferenceDynamicBackendTestImpl()
convolution2dQueueDescriptor.m_Weight = weights.get();
// Create a convolution workload with the dummy settings
- auto workload = referenceWorkloadFactory->CreateConvolution2d(convolution2dQueueDescriptor, workloadInfo);
+ auto workload = referenceWorkloadFactory->CreateWorkload(LayerType::Convolution2d,
+ convolution2dQueueDescriptor,
+ workloadInfo);
CHECK((workload != nullptr));
CHECK(workload.get() == PolymorphicDowncast<RefConvolution2dWorkload*>(workload.get()));
}
diff --git a/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp b/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
index bc5e335a93..06f3eb561e 100644
--- a/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
+++ b/src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp
@@ -549,7 +549,7 @@ struct LayerTypePolicy<armnn::LayerType::name, DataType> \
{ \
QueueDesc desc; \
armnn::WorkloadInfo info = MakeDummyWorkloadInfo<DataType>(nIn, nOut); \
- return factory->Create##name(desc, info); \
+ return factory->CreateWorkload(armnn::LayerType::name, desc, info); \
} \
};
diff --git a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
index 119f8744d3..c715d28ebe 100644
--- a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
+++ b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp
@@ -50,7 +50,8 @@ TEST_CASE("QueueDescriptor_Validate_WrongNumOfInputsOutputs")
InputQueueDescriptor invalidData;
WorkloadInfo invalidInfo;
//Invalid argument exception is expected, because no inputs and no outputs were defined.
- CHECK_THROWS_AS(RefWorkloadFactory().CreateInput(invalidData, invalidInfo), armnn::InvalidArgumentException);
+ CHECK_THROWS_AS(RefWorkloadFactory().CreateWorkload(LayerType::Input, invalidData, invalidInfo),
+ armnn::InvalidArgumentException);
}
TEST_CASE("RefPooling2dFloat32Workload_Validate_WrongDimTensor")
diff --git a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
index 57687051b6..ea9973b7d3 100644
--- a/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ActivationTestImpl.cpp
@@ -71,7 +71,8 @@ LayerTestResult<T, 4> BoundedReLuTestCommon(
descriptor.m_Parameters.m_A = upperBound;
descriptor.m_Parameters.m_B = lowerBound;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(descriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ descriptor, workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -269,7 +270,8 @@ std::vector<float> BoundedReLuRandomInputTest(
AddOutputToWorkload(descriptor, workloadInfo, outputTensorInfo, outputHandle.get());
descriptor.m_Parameters = activationDescriptor;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(descriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ descriptor, workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -352,7 +354,8 @@ LayerTestResult<T, 4> ConstantLinearActivationTestCommon(
data.m_Parameters.m_B = 0.0f;
data.m_Parameters.m_Function = armnn::ActivationFunction::Linear;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -458,7 +461,8 @@ LayerTestResult<T, 4> SimpleActivationTest(
descriptor.m_Parameters.m_A = activationParameterA;
descriptor.m_Parameters.m_B = activationParameterB;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(descriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ descriptor, workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -875,7 +879,8 @@ LayerTestResult<float, 5> SqrtNNTest(
descriptor.m_Parameters.m_Function = armnn::ActivationFunction::Sqrt;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(descriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ descriptor, workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -1278,9 +1283,11 @@ LayerTestResult<T, 4> CompareActivationTestImpl(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateActivation(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ data, info);
ARMNN_ASSERT(workload != nullptr);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateActivation(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateWorkload(armnn::LayerType::Activation,
+ refData, refInfo);
ARMNN_ASSERT(workloadRef != nullptr);
inputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.cpp
index ce8f74d2e0..56906bc2a1 100644
--- a/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/AdditionTestImpl.cpp
@@ -16,7 +16,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::AdditionQueueDescriptor>
const armnn::WorkloadInfo& info,
const armnn::AdditionQueueDescriptor& descriptor)
{
- return workloadFactory.CreateAddition(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Addition, descriptor, info);
}
LayerTestResult<float,4> AdditionTest(
@@ -231,7 +231,8 @@ LayerTestResult<T, 4> AdditionBroadcastTestImpl(
AddInputToWorkload(data, info, inputTensorInfo2, inputHandle2.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateAddition(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Addition,
+ data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -314,7 +315,8 @@ LayerTestResult<T, 4> AdditionBroadcast1ElementTestImpl(
AddInputToWorkload(data, info, inputTensorInfo2, inputHandle2.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateAddition(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Addition,
+ data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -580,7 +582,9 @@ LayerTestResult<float, 4> AdditionAfterMaxPoolTest(
AddOutputToWorkload(queueDescriptor, workloadInfo, poolingOutputTensorInfo, poolingOutputHandle.get());
// Create the MaxPool
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePooling2d(queueDescriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pooling2d,
+ queueDescriptor,
+ workloadInfo);
std::vector<float> resultMaxPool(poolingOutputTensorInfo.GetNumElements());
@@ -611,7 +615,8 @@ LayerTestResult<float, 4> AdditionAfterMaxPoolTest(
AddInputToWorkload(data, info, addInputTensorInfo, addInputHandle.get());
AddOutputToWorkload(data, info, addOutputTensorInfo, addOutputHandle.get());
- std::unique_ptr<armnn::IWorkload> addWorkload = workloadFactory.CreateAddition(data, info);
+ std::unique_ptr<armnn::IWorkload> addWorkload = workloadFactory.CreateWorkload(armnn::LayerType::Addition,
+ data, info);
poolingInputHandle->Allocate();
poolingOutputHandle->Allocate();
@@ -685,8 +690,10 @@ LayerTestResult<float,4> CompareAdditionTest(
SetWorkloadInput(refData, refInfo, 1, inputTensorInfo2, inputHandle2Ref.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateAddition(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateAddition(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Addition,
+ data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateWorkload(armnn::LayerType::Addition,
+ refData, refInfo);
inputHandle1->Allocate();
inputHandle2->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
index e98708fd02..88d92d22f1 100644
--- a/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ArgMinMaxTestImpl.cpp
@@ -41,7 +41,8 @@ LayerTestResult<int32_t, 3> ArgMinMaxTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateArgMinMax(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::ArgMinMax,
+ descriptor, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
index b4414050e7..928918c83a 100644
--- a/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.cpp
@@ -94,7 +94,8 @@ LayerTestResult<T, 4> BatchNormTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateBatchNormalization(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::BatchNormalization, descriptor, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -192,7 +193,8 @@ LayerTestResult<T,4> BatchNormTestNhwcImpl(
},
qScale, qOffset);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateBatchNormalization(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::BatchNormalization, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -672,8 +674,10 @@ LayerTestResult<float,4> CompareBatchNormTest(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateBatchNormalization(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateBatchNormalization(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::BatchNormalization, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::BatchNormalization, refData, refInfo);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
index 23e790f15a..a5fdfa64d0 100644
--- a/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/BatchToSpaceNdTestImpl.hpp
@@ -64,7 +64,8 @@ LayerTestResult<T, OutputDim> BatchToSpaceNdHelper(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateBatchToSpaceNd(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::BatchToSpaceNd,
+ data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/CastTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/CastTestImpl.cpp
index 92bce4f460..8d60cf1b0f 100644
--- a/src/backends/backendsCommon/test/layerTests/CastTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/CastTestImpl.cpp
@@ -41,7 +41,7 @@ LayerTestResult<TOutput, 4> CastTest(armnn::IWorkloadFactory& workloadFactory,
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateCast(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Cast, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
index 08a68cc04c..74b7bc3b07 100644
--- a/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ChannelShuffleTestImpl.cpp
@@ -35,7 +35,8 @@ LayerTestResult<T, NumDims> ChannelShuffleTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateChannelShuffle(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::ChannelShuffle, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
index 2640c329b3..016d27897e 100644
--- a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp
@@ -66,7 +66,8 @@ LayerTestResult<uint8_t, NumDims> ComparisonTestImpl(
AddInputToWorkload(qDescriptor, info, inputTensorInfo1, inputHandle1.get());
AddOutputToWorkload(qDescriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateComparison(qDescriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Comparison, qDescriptor, info);
inputHandle0->Allocate();
inputHandle1->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
index 8fbd3e39d8..88a392cf18 100644
--- a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp
@@ -147,7 +147,9 @@ template<typename T> void PermuteTensorData(
AddInputToWorkload(queueDescriptor, workloadInfo, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(queueDescriptor, workloadInfo, outputTensorInfo, outputHandle.get());
- std::unique_ptr<IWorkload> workload = workloadFactory.CreatePermute(queueDescriptor, workloadInfo);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Permute,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -379,7 +381,8 @@ template<typename T> void Concatenate(
AddOutputToWorkload(queueDescriptor, workloadInfo, outputTensorInfo, outputHandle.get());
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(queueDescriptor, workloadInfo);
+ std::unique_ptr<IWorkload> workload
+ = workloadFactory.CreateWorkload(LayerType::Concat, queueDescriptor, workloadInfo);
for (auto& inputHandle : inputHandles)
{
@@ -2069,7 +2072,7 @@ LayerTestResult<T, 3> ConcatDifferentInputOutputQParamTest(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(data, info);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Concat, data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -2217,7 +2220,7 @@ LayerTestResult<float,3> ConcatTest(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(data, info);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Concat, data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -2549,7 +2552,7 @@ LayerTestResult<uint8_t, 3> ConcatUint8DifferentQParamsTest(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(data, info);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Concat, data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -2687,7 +2690,7 @@ LayerTestResult<uint8_t, 3> ConcatUint8Test(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(data, info);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Concat, data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
@@ -2826,7 +2829,7 @@ LayerTestResult<uint16_t, 3> ConcatUint16Test(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConcat(data, info);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(LayerType::Concat, data, info);
inputHandle1->Allocate();
inputHandle2->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
index f7d84157ad..c9da74985e 100644
--- a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp
@@ -108,7 +108,9 @@ LayerTestResult<T, 4> ConstantTestImpl(
armnn::WorkloadInfo info;
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConstant(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Constant,
+ descriptor,
+ info);
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
index 0982d01e2e..33dfc23b7d 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp
@@ -344,7 +344,9 @@ LayerTestResult<T, 4> SimpleConvolution2dTestImpl(
data.m_Parameters.m_DilationX = dilationX;
data.m_Parameters.m_DilationY = dilationY;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Convolution2d,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -444,7 +446,9 @@ LayerTestResult<O, 4> SimpleConvolution2dNhwcTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Convolution2d,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -570,7 +574,9 @@ LayerTestResult<T,4> Convolution1dTestImpl(
data.m_Parameters.m_PadBottom = padSize;
data.m_Parameters.m_BiasEnabled = biasEnabled;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Convolution2d,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -1388,8 +1394,10 @@ LayerTestResult<T,4> CompareConvolution2dTestImpl(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvolution2d(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateConvolution2d(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Convolution2d, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::Convolution2d, refData, refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
@@ -1756,7 +1764,8 @@ LayerTestResult<T, 4> DepthwiseConvolution2dAsymmetricTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -1905,7 +1914,8 @@ LayerTestResult<T, 4> DepthwiseConvolution2dDepthMul1TestImpl(
data.m_Parameters.m_BiasEnabled = biasEnabled;
data.m_Parameters.m_DataLayout = layout;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -2100,7 +2110,8 @@ LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl(
data.m_Parameters.m_BiasEnabled = biasEnabled;
data.m_Parameters.m_DataLayout = layout;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -2266,7 +2277,8 @@ LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl(
data.m_Parameters.m_DilationX = dilationX;
data.m_Parameters.m_DilationY = dilationY;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -2989,8 +3001,10 @@ LayerTestResult<T, 4> CompareDepthwiseConvolution2dTestImpl(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateDepthwiseConvolution2d(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d, refData, refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
@@ -3474,7 +3488,9 @@ LayerTestResult<uint8_t, 4> Convolution2dPerAxisQuantTest(
AddInputToWorkload(queueDescriptor, workloadInfo, inputInfo, inputHandle.get());
AddOutputToWorkload(queueDescriptor, workloadInfo, outputInfo, outputHandle.get());
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateConvolution2d(queueDescriptor, workloadInfo);
+ std::unique_ptr<IWorkload> workload= workloadFactory.CreateWorkload(armnn::LayerType::Convolution2d,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -3740,7 +3756,9 @@ LayerTestResult<uint8_t, 4> DepthwiseConvolution2dPerAxisQuantTest(
AddInputToWorkload(queueDescriptor, workloadInfo, inputInfo, inputHandle.get());
AddOutputToWorkload(queueDescriptor, workloadInfo, outputInfo, outputHandle.get());
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateDepthwiseConvolution2d(queueDescriptor, workloadInfo);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::DepthwiseConvolution2d,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
index 45cf48b40e..406fcb4700 100644
--- a/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Conv3dTestImpl.cpp
@@ -275,7 +275,9 @@ LayerTestResult<T, 5> SimpleConvolution3dTestImpl(
AddInputToWorkload(data, info, biasDesc, input2Handle.get());
}
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvolution3d(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Convolution3d,
+ data,
+ info);
input0Handle->Allocate();
input1Handle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
index e4ba0b8c0b..49e1cebc0f 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp
@@ -42,7 +42,9 @@ LayerTestResult<float, 4> ConvertBf16ToFp32Test(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvertBf16ToFp32(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::ConvertBf16ToFp32,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
index 74c03d939b..d581032838 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp
@@ -46,7 +46,9 @@ LayerTestResult<float, 4> SimpleConvertFp16ToFp32Test(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvertFp16ToFp32(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::ConvertFp16ToFp32,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
index 667fd29c24..61a55f26c2 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp
@@ -63,7 +63,9 @@ LayerTestResult<armnn::BFloat16, 4> ConvertFp32ToBf16Test(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvertFp32ToBf16(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::ConvertFp32ToBf16,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
index 13dde067b0..060e7a2762 100644
--- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp
@@ -44,7 +44,9 @@ LayerTestResult<armnn::Half, 4> SimpleConvertFp32ToFp16Test(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateConvertFp32ToFp16(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::ConvertFp32ToFp16,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
index 2938489d63..d2cbdd1412 100644
--- a/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DebugTestImpl.cpp
@@ -56,7 +56,9 @@ LayerTestResult<T, Dim> DebugTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDebug(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Debug,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
index ee4f1b3660..6476e7b0da 100644
--- a/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DepthToSpaceTestImpl.cpp
@@ -58,7 +58,9 @@ LayerTestResult<T, 4> DepthToSpaceTestImpl(
AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDepthToSpace(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::DepthToSpace,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
index 98bf74f833..e8fabea3ba 100644
--- a/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DequantizeTestImpl.cpp
@@ -39,7 +39,9 @@ LayerTestResult<T1, Dim> DequantizeTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDequantize(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Dequantize,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
index 52aacad38c..43e7d15158 100644
--- a/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/DetectionPostProcessTestImpl.hpp
@@ -200,7 +200,9 @@ void DetectionPostProcessImpl(const armnn::TensorInfo& boxEncodingsInfo,
AddOutputToWorkload(data, info, detectionScoresInfo, outputScoresHandle.get());
AddOutputToWorkload(data, info, numDetectionInfo, numDetectionHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateDetectionPostProcess(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::DetectionPostProcess,
+ data,
+ info);
boxedHandle->Allocate();
scoreshandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.cpp
index f3688347d2..e355ec69c1 100644
--- a/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/DivisionTestImpl.cpp
@@ -13,7 +13,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::DivisionQueueDescriptor>
const armnn::WorkloadInfo& info,
const armnn::DivisionQueueDescriptor& descriptor)
{
- return workloadFactory.CreateDivision(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Division, descriptor, info);
}
LayerTestResult<float, 4> DivisionByZeroTest(
diff --git a/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.cpp
index a2c88a62e7..c821e83835 100644
--- a/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ElementwiseUnaryTestImpl.cpp
@@ -10,5 +10,5 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload(
const armnn::WorkloadInfo& info,
const armnn::ElementwiseUnaryQueueDescriptor& descriptor)
{
- return workloadFactory.CreateElementwiseUnary(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::ElementwiseUnary, descriptor, info);
} \ No newline at end of file
diff --git a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
index 613f8b7f6a..e2fb6fa373 100644
--- a/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FakeQuantizationTestImpl.cpp
@@ -54,7 +54,9 @@ LayerTestResult<float, 2> FakeQuantizationTest(
armnn::WorkloadInfo refInfo = info;
SetWorkloadOutput(refData, refInfo, 0, tensorInfo, &refHandle);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateFakeQuantization(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::FakeQuantization,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
index fae2691af7..1be0e40871 100644
--- a/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FillTestImpl.cpp
@@ -40,7 +40,7 @@ LayerTestResult<T, 4> SimpleFillTest(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateFill(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Fill, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
index 527b0dbd13..fbd962584a 100644
--- a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp
@@ -47,7 +47,7 @@ LayerTestResult<T, 4> SimpleFloorTest(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateFloor(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Floor, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
index 9361f4d2b3..71d2d0a81e 100644
--- a/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/FullyConnectedTestImpl.cpp
@@ -69,7 +69,9 @@ LayerTestResult<T, 2> SimpleFullyConnectedTestImpl(
AddInputToWorkload(data, info, biasesTensorInfo, input2Handle.get());
}
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateFullyConnected(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::FullyConnected,
+ data,
+ info);
LayerTestResult<T, 2> result(outputTensorInfo);
input0Handle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
index ad81968b71..c89d53be66 100644
--- a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
@@ -46,7 +46,7 @@ LayerTestResult<T, OutputDim> GatherTestImpl(
AddInputToWorkload(data, info, indicesInfo, indicesHandle.get());
AddOutputToWorkload(data, info, outputInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateGather(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Gather, data, info);
paramsHandle->Allocate();
indicesHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
index 9de7df7029..bebbedad87 100644
--- a/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/InstanceNormalizationTestImpl.cpp
@@ -48,7 +48,8 @@ LayerTestResult<T, 4> InstanceNormTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateInstanceNormalization(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::InstanceNormalization, descriptor, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
index f7566fd014..0a60658b47 100644
--- a/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp
@@ -79,7 +79,9 @@ LayerTestResult<T, 4> L2NormalizationTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateL2Normalization(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::L2Normalization,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -740,7 +742,9 @@ LayerTestResult<float, 2> L2Normalization2dShapeTest(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateL2Normalization(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::L2Normalization,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
index 016d143e35..cb182d6d3f 100644
--- a/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LogSoftmaxTestImpl.cpp
@@ -52,7 +52,9 @@ LayerTestResult<T, NumDims> LogSoftmaxTestImpl(
AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLogSoftmax(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::LogSoftmax,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
index d2fa2bd6f7..60e14b5d9d 100644
--- a/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.cpp
@@ -48,7 +48,7 @@ LayerTestResult<uint8_t, NumDims> LogicalUnaryTestHelper(
AddInputToWorkload(qDesc, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(qDesc, info, outputTensorInfo, outputHandle.get());
- auto workload = workloadFactory.CreateElementwiseUnary(qDesc, info);
+ auto workload = workloadFactory.CreateWorkload(armnn::LayerType::ElementwiseUnary, qDesc, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -104,7 +104,7 @@ LayerTestResult<uint8_t, NumDims> LogicalBinaryTestHelper(
AddInputToWorkload(qDesc, info, inputTensorInfo1, inputHandle1.get());
AddOutputToWorkload(qDesc, info, outputTensorInfo, outputHandle.get());
- auto workload = workloadFactory.CreateLogicalBinary(qDesc, info);
+ auto workload = workloadFactory.CreateWorkload(armnn::LayerType::LogicalBinary, qDesc, info);
inputHandle0->Allocate();
inputHandle1->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
index c04e97bb0f..a69f7270b4 100644
--- a/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/LstmTestImpl.cpp
@@ -314,7 +314,7 @@ LstmNoCifgNoPeepholeNoProjectionTestImpl(
data.m_Parameters.m_PeepholeEnabled = false;
data.m_Parameters.m_ProjectionEnabled = false;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Lstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -987,7 +987,7 @@ LstmLayerNoCifgWithPeepholeWithProjectionTestImpl(armnn::IWorkloadFactory& workl
data.m_Parameters.m_PeepholeEnabled = true;
data.m_Parameters.m_ProjectionEnabled = true;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Lstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1211,7 +1211,7 @@ LayerTestResult<T, 2> LstmLayerWithCifgWithPeepholeNoProjectionTestImpl(
AddOutputToWorkload(data, info, cellStateOutTensorInfo, cellStateOutHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Lstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
@@ -1464,7 +1464,7 @@ LstmLayerNoCifgWithPeepholeWithProjectionWithLayerNormTestImpl(armnn::IWorkloadF
data.m_Parameters.m_LayerNormEnabled = true;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Lstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1653,7 +1653,9 @@ LayerTestResult<uint8_t, 2> QuantizedLstmTestImpl(
data.m_OutputGateBias = &outputGateBiasTensor;
// Create workload and allocate tensor handles
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateQuantizedLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::QuantizedLstm,
+ data,
+ info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1890,7 +1892,7 @@ LayerTestResult<int8_t, 2> QLstmTestImpl(
data.m_Parameters.m_ProjectionClip = projectionClip;
// Create workload and allocate tensor handles
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateQLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::QLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -2155,7 +2157,7 @@ LayerTestResult<int8_t, 2> QLstmTestImpl1(
data.m_Parameters.m_ProjectionClip = projectionClip;
// Create workload and allocate tensor handles
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateQLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::QLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -2406,7 +2408,7 @@ LayerTestResult<int8_t, 2> QLstmTestImpl2(
data.m_Parameters.m_ProjectionClip = projectionClip;
// Create workload and allocate tensor handles
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateQLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::QLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.cpp
index 1ef8f9a4e9..c2c7cd520a 100644
--- a/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/MaximumTestImpl.cpp
@@ -13,7 +13,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::MaximumQueueDescriptor>(
const armnn::WorkloadInfo& info,
const armnn::MaximumQueueDescriptor& descriptor)
{
- return workloadFactory.CreateMaximum(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Maximum, descriptor, info);
}
LayerTestResult<float, 4> MaximumSimpleTest(
diff --git a/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
index 29dba2f152..eacb4e0f1b 100644
--- a/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/MeanTestImpl.hpp
@@ -55,7 +55,7 @@ LayerTestResult<T, OutputDim> MeanTestHelper(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateMean(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Mean, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.cpp
index 015d055dcc..ff31d27774 100644
--- a/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/MinimumTestImpl.cpp
@@ -13,7 +13,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::MinimumQueueDescriptor>(
const armnn::WorkloadInfo& info,
const armnn::MinimumQueueDescriptor& descriptor)
{
- return workloadFactory.CreateMinimum(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Minimum, descriptor, info);
}
LayerTestResult<float, 4> MinimumBroadcast1ElementTest1(
diff --git a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
index 2647bb976f..d99e5c8fbd 100644
--- a/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/MirrorPadTestImpl.cpp
@@ -43,7 +43,9 @@ LayerTestResult<T, 2> MirrorPad2dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -86,7 +88,9 @@ LayerTestResult<T, 3> MirrorPad3dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -129,7 +133,9 @@ LayerTestResult<T, 4> MirrorPad4dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.cpp
index c7b082183c..eab24810d5 100644
--- a/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/MultiplicationTestImpl.cpp
@@ -14,7 +14,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::MultiplicationQueueDescr
const armnn::WorkloadInfo& info,
const armnn::MultiplicationQueueDescriptor& descriptor)
{
- return workloadFactory.CreateMultiplication(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Multiplication, descriptor, info);
}
LayerTestResult<float, 4> MultiplicationTest(armnn::IWorkloadFactory& workloadFactory,
@@ -571,8 +571,10 @@ LayerTestResult<float,4> CompareMultiplicationTest(
SetWorkloadInput(refData, refInfo, 1, inputTensorInfo1, inputHandle1Ref.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateMultiplication(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateMultiplication(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Multiplication, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::Multiplication, refData, refInfo);
inputHandle0->Allocate();
inputHandle1->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
index 4f2add51ff..2b2ff0cc14 100644
--- a/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/NormalizationTestImpl.cpp
@@ -82,7 +82,9 @@ LayerTestResult<float,4> SimpleNormalizationTestImpl(
armnn::WorkloadInfo refInfo = info;
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, &refHandle);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateNormalization(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Normalization,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -237,7 +239,9 @@ LayerTestResult<float,4> SimpleNormalizationNhwcTestImpl(
armnn::WorkloadInfo refInfo = info;
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, &refHandle);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateNormalization(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Normalization,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -355,8 +359,10 @@ LayerTestResult<float,4> CompareNormalizationTestImpl(
return ret;
}
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateNormalization(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateNormalization(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Normalization, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::Normalization, refData, refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
@@ -438,7 +444,9 @@ LayerTestResult<float,4> AcrossChannelNormalizationTestImpl(
armnn::WorkloadInfo refInfo = info;
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, &refHandle);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateNormalization(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Normalization,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
index ab2ef24a2b..b1d8c31dfc 100644
--- a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp
@@ -72,7 +72,9 @@ LayerTestResult<T, 2> Pad2dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -157,7 +159,9 @@ LayerTestResult<T, 3> Pad3dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -397,7 +401,9 @@ LayerTestResult<T, 4> Pad4dTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -470,7 +476,9 @@ LayerTestResult<T, 2> PadQAsymmTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePad(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pad,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
index fb55f08c54..bffa3d47a1 100644
--- a/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/PermuteTestImpl.hpp
@@ -39,7 +39,7 @@ LayerTestResult<T, 4> SimplePermuteTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePermute(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Permute, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
index 248f9726a1..643a5df6be 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling2dTestImpl.cpp
@@ -100,7 +100,9 @@ LayerTestResult<T, 4> SimplePooling2dTestImpl(
return result;
}
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePooling2d(queueDescriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pooling2d,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -830,8 +832,10 @@ LayerTestResult<T, 4> ComparePooling2dTestCommon(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePooling2d(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreatePooling2d(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Pooling2d, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::Pooling2d, refData, refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
index 3befc7c585..013ed03f08 100644
--- a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.cpp
@@ -104,7 +104,9 @@ LayerTestResult<T, 5> SimplePooling3dTestImpl(
return result;
}
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePooling3d(queueDescriptor, workloadInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Pooling3d,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -1035,8 +1037,10 @@ LayerTestResult<T, 5> ComparePooling3dTestCommon(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePooling3d(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreatePooling3d(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::Pooling3d, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef
+ = refWorkloadFactory.CreateWorkload(armnn::LayerType::Pooling3d, refData, refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
index a74be62b66..02452452a3 100644
--- a/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/PreluTestImpl.hpp
@@ -84,7 +84,9 @@ LayerTestResult<T, 4> PreluTest(
AddInputToWorkload (descriptor, info, alphaTensorInfo, alphaHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreatePrelu(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Prelu,
+ descriptor,
+ info);
inputHandle->Allocate();
alphaHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
index 5878ec8d9b..38d6fbaac1 100644
--- a/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/QuantizeTestImpl.cpp
@@ -40,7 +40,9 @@ LayerTestResult<T, Dim> QuantizeTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateQuantize(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Quantize,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
index ef45eec8c5..be22fc6eed 100644
--- a/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/RankTestImpl.cpp
@@ -35,7 +35,7 @@ LayerTestResult<int32_t, 1> RankTest(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateRank(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Rank, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
index a8b1fda8dc..9506f36bd4 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceProdTestImpl.cpp
@@ -59,7 +59,9 @@ LayerTestResult<float, 4> ReduceTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateReduce(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Reduce,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
index acb2990c98..c8a61bb42d 100644
--- a/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReduceSumTestImpl.cpp
@@ -59,7 +59,9 @@ LayerTestResult<float, 4> ReduceTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateReduce(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Reduce,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
index 47cb1d730a..4edf3dd689 100644
--- a/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReductionTestImpl.cpp
@@ -61,7 +61,9 @@ LayerTestResult<float, 4> ReductionTestCommon(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateReduce(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Reduce,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
index ae9280b10f..217d8e9d4b 100644
--- a/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ReshapeTestImpl.cpp
@@ -35,7 +35,7 @@ LayerTestResult<T, NumDims> SimpleReshapeTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateReshape(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Reshape, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
index 1773809d70..2e8cc66c09 100644
--- a/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ResizeTestImpl.cpp
@@ -123,7 +123,9 @@ LayerTestResult<T, NumDims> ResizeTestImpl(
AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateResize(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Resize,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
index 5aa3b7ca24..e30912c9ed 100644
--- a/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/ShapeTestImpl.cpp
@@ -33,7 +33,7 @@ LayerTestResult<int32_t, 1> ShapeTest(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateShape(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Shape, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
index 32abf35576..95d2320508 100644
--- a/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SliceTestImpl.cpp
@@ -52,7 +52,9 @@ LayerTestResult<T, NumDims> SliceTestImpl(
AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSlice(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Slice,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
index e8b4ee5af3..1956533611 100644
--- a/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SoftmaxTestImpl.cpp
@@ -98,7 +98,7 @@ LayerTestResult<T, n> SimpleSoftmaxBaseTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSoftmax(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Softmax, data, info);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -283,8 +283,10 @@ LayerTestResult<T, 2> CompareSoftmaxTestImpl(
SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get());
SetWorkloadOutput(refData, refInfo, 0, outputTensorInfo, outputHandleRef.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSoftmax(data, info);
- std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateSoftmax(refData, refInfo);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Softmax, data, info);
+ std::unique_ptr<armnn::IWorkload> workloadRef = refWorkloadFactory.CreateWorkload(armnn::LayerType::Softmax,
+ refData,
+ refInfo);
outputHandleRef->Allocate();
inputHandleRef->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
index fe6aa70b87..103e3363ba 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.cpp
@@ -69,7 +69,9 @@ LayerTestResult<T, 4> SpaceToBatchNdTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSpaceToBatchNd(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::SpaceToBatchNd,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
index 0080bb6243..f67ed9bcd9 100644
--- a/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SpaceToDepthTestImpl.cpp
@@ -70,7 +70,9 @@ LayerTestResult<T, 4> SpaceToDepthTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSpaceToDepth(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::SpaceToDepth,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
index cfb6a1f9c7..f2ee7bff3d 100644
--- a/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SplitterTestImpl.cpp
@@ -207,7 +207,9 @@ std::vector<LayerTestResult<T,3>> SplitterTestCommon(
data.m_ViewOrigins.push_back(window1);
data.m_ViewOrigins.push_back(window2);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSplitter(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Splitter,
+ data,
+ info);
inputHandle->Allocate();
outputHandle1->Allocate();
@@ -230,7 +232,9 @@ std::vector<LayerTestResult<T,3>> SplitterTestCommon(
data2.m_ViewOrigins.push_back(window3);
data2.m_ViewOrigins.push_back(window4);
- std::unique_ptr<armnn::IWorkload> workload2 = workloadFactory.CreateSplitter(data2, info2);
+ std::unique_ptr<armnn::IWorkload> workload2 = workloadFactory.CreateWorkload(armnn::LayerType::Splitter,
+ data2,
+ info2);
outputHandle3->Allocate();
outputHandle4->Allocate();
@@ -305,7 +309,9 @@ LayerTestResult<T, 3> CopyViaSplitterTestImpl(
data.m_ViewOrigins.push_back(window);
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateSplitter(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Splitter,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
index 5250c3af73..252adb93ac 100644
--- a/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/StackTestImpl.cpp
@@ -65,7 +65,9 @@ LayerTestResult<T, outputDimLength> StackTestHelper(
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
outputHandle->Allocate();
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateStack(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Stack,
+ descriptor,
+ info);
workload->Execute();
diff --git a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
index b4818bb12b..865b74c610 100644
--- a/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/StridedSliceTestImpl.cpp
@@ -54,7 +54,9 @@ LayerTestResult<T, OutDim> StridedSliceTestImpl(
AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateStridedSlice(descriptor, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::StridedSlice,
+ descriptor,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.cpp
index 3c4946e44a..61e76ed1ab 100644
--- a/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/SubtractionTestImpl.cpp
@@ -13,7 +13,7 @@ std::unique_ptr<armnn::IWorkload> CreateWorkload<armnn::SubtractionQueueDescript
const armnn::WorkloadInfo& info,
const armnn::SubtractionQueueDescriptor& descriptor)
{
- return workloadFactory.CreateSubtraction(descriptor, info);
+ return workloadFactory.CreateWorkload(armnn::LayerType::Subtraction, descriptor, info);
}
LayerTestResult<uint8_t, 4> SubtractionUint8Test(
diff --git a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
index 95687e3c25..41e57de734 100644
--- a/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/TransposeConvolution2dTestImpl.cpp
@@ -96,7 +96,7 @@ void TransposeConvolution2dTestImpl(armnn::IWorkloadFactory& workloadFactory,
AddOutputToWorkload(queueDescriptor, workloadInfo, output.first, outputHandle.get());
std::unique_ptr<armnn::IWorkload> workload =
- workloadFactory.CreateTransposeConvolution2d(queueDescriptor, workloadInfo);
+ workloadFactory.CreateWorkload(armnn::LayerType::TransposeConvolution2d, queueDescriptor, workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
@@ -658,7 +658,9 @@ LayerTestResult<uint8_t, 4> TransposeConvolution2dPerAxisQuantTest(
AddInputToWorkload(queueDescriptor, workloadInfo, inputInfo, inputHandle.get());
AddOutputToWorkload(queueDescriptor, workloadInfo, outputInfo, outputHandle.get());
- std::unique_ptr<IWorkload> workload = workloadFactory.CreateTransposeConvolution2d(queueDescriptor, workloadInfo);
+ std::unique_ptr<IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::TransposeConvolution2d,
+ queueDescriptor,
+ workloadInfo);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
index 82bd487d3c..66652f28da 100644
--- a/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
+++ b/src/backends/backendsCommon/test/layerTests/TransposeTestImpl.hpp
@@ -39,7 +39,9 @@ LayerTestResult<T, 4> SimpleTransposeTestImpl(
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateTranspose(data, info);
+ std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateWorkload(armnn::LayerType::Transpose,
+ data,
+ info);
inputHandle->Allocate();
outputHandle->Allocate();
diff --git a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
index e6b50f614a..66a26cc41d 100644
--- a/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/UnidirectionalSequenceLstmTestImpl.cpp
@@ -169,7 +169,8 @@ LayerTestResult<T, 3> UnidirectionalSequenceLstmLayerFloat32TestImpl(
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = false;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -344,7 +345,8 @@ UnidirectionalSequenceLstmLayerFloat32TimeMajorTestImpl(
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = true;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -624,7 +626,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerNoCifgWithPeepholeWithP
data.m_Parameters.m_ClippingThresCell = 10.0f;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -848,7 +851,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerNoCifgWithPeepholeWithP
data.m_Parameters.m_TimeMajor = false;
data.m_Parameters.m_ClippingThresCell = 10.0f;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1008,7 +1012,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmWithCifgWithPeepholeNoProjec
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = false;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1147,7 +1152,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerInt8Test(
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = false;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1286,7 +1292,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerInt8TimeMajorTest(
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = true;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1449,7 +1456,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerInt8NoCifgWithPeepholeW
data.m_Parameters.m_ClippingThresCell = 10.0f;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1640,7 +1648,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmLayerInt8NoCifgWithPeepholeW
data.m_Parameters.m_TimeMajor = false;
data.m_Parameters.m_ClippingThresCell = 10.0f;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();
@@ -1776,7 +1785,8 @@ LayerTestResult<float, 3> UnidirectionalSequenceLstmInt8WithCifgWithPeepholeNoPr
data.m_Parameters.m_ProjectionEnabled = false;
data.m_Parameters.m_TimeMajor = false;
- std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateUnidirectionalSequenceLstm(data, info);
+ std::unique_ptr<armnn::IWorkload> workload
+ = workloadFactory.CreateWorkload(armnn::LayerType::UnidirectionalSequenceLstm, data, info);
inputHandle->Allocate();
outputStateInHandle->Allocate();
cellStateInHandle->Allocate();