aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTeresa Charlin <teresa.charlinreyes@arm.com>2021-04-21 12:56:45 +0100
committerTeresaARM <teresa.charlinreyes@arm.com>2021-04-21 16:26:15 +0000
commite11e63d749b0909f13f9a39c8d34ef5523255170 (patch)
tree7a44acf59176dabd663dd36b815875b390918b68
parentfe95d7203ba7a6ac31e0656190ba56de6fcf4735 (diff)
downloadarmnn-e11e63d749b0909f13f9a39c8d34ef5523255170.tar.gz
IVGCVSW-5909 Fix CTS failure in GpuAcc DIV int32
* CLWorkload was only supporting float Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ic57a490f03a055c158edc19e831b153a44e25166
-rw-r--r--src/backends/cl/ClBackend.cpp2
-rw-r--r--src/backends/cl/ClLayerSupport.cpp2
-rw-r--r--src/backends/cl/ClWorkloadFactory.cpp2
-rw-r--r--src/backends/cl/backend.mk2
-rw-r--r--src/backends/cl/test/ClCreateWorkloadTests.cpp4
-rw-r--r--src/backends/cl/workloads/CMakeLists.txt4
-rw-r--r--src/backends/cl/workloads/ClDivisionWorkload.cpp (renamed from src/backends/cl/workloads/ClDivisionFloatWorkload.cpp)16
-rw-r--r--src/backends/cl/workloads/ClDivisionWorkload.hpp (renamed from src/backends/cl/workloads/ClDivisionFloatWorkload.hpp)10
-rw-r--r--src/backends/cl/workloads/ClMultiplicationWorkload.hpp3
-rw-r--r--src/backends/cl/workloads/ClWorkloads.hpp2
10 files changed, 22 insertions, 25 deletions
diff --git a/src/backends/cl/ClBackend.cpp b/src/backends/cl/ClBackend.cpp
index 33aff2731d..f97cb4bba8 100644
--- a/src/backends/cl/ClBackend.cpp
+++ b/src/backends/cl/ClBackend.cpp
@@ -26,7 +26,7 @@
#include "workloads/ClBatchNormalizationFloatWorkload.hpp"
#include "workloads/ClConvolution2dWorkload.hpp"
#include "workloads/ClDepthwiseConvolutionWorkload.hpp"
-#include "workloads/ClDivisionFloatWorkload.hpp"
+#include "workloads/ClDivisionWorkload.hpp"
#include "workloads/ClFullyConnectedWorkload.hpp"
#include "workloads/ClMultiplicationWorkload.hpp"
#include "workloads/ClSubtractionWorkload.hpp"
diff --git a/src/backends/cl/ClLayerSupport.cpp b/src/backends/cl/ClLayerSupport.cpp
index 0ab79309a0..cdbbf0cf56 100644
--- a/src/backends/cl/ClLayerSupport.cpp
+++ b/src/backends/cl/ClLayerSupport.cpp
@@ -33,7 +33,7 @@
#include "workloads/ClDepthToSpaceWorkload.hpp"
#include "workloads/ClDepthwiseConvolutionWorkload.hpp"
#include "workloads/ClDequantizeWorkload.hpp"
-#include "workloads/ClDivisionFloatWorkload.hpp"
+#include "workloads/ClDivisionWorkload.hpp"
#include "workloads/ClExpWorkload.hpp"
#include "workloads/ClFillWorkload.hpp"
#include "workloads/ClFloorFloatWorkload.hpp"
diff --git a/src/backends/cl/ClWorkloadFactory.cpp b/src/backends/cl/ClWorkloadFactory.cpp
index ee6bcd3bc3..8ff82f29ba 100644
--- a/src/backends/cl/ClWorkloadFactory.cpp
+++ b/src/backends/cl/ClWorkloadFactory.cpp
@@ -325,7 +325,7 @@ std::unique_ptr<IWorkload> ClWorkloadFactory::CreateDetectionPostProcess(
std::unique_ptr<IWorkload> ClWorkloadFactory::CreateDivision(const DivisionQueueDescriptor& descriptor,
const WorkloadInfo& info) const
{
- return MakeWorkload<ClDivisionFloatWorkload, NullWorkload>(descriptor, info, m_CLCompileContext);
+ return std::make_unique<ClDivisionWorkload>(descriptor, info, m_CLCompileContext);
}
std::unique_ptr<IWorkload> ClWorkloadFactory::CreateElementwiseUnary(const ElementwiseUnaryQueueDescriptor& descriptor,
diff --git a/src/backends/cl/backend.mk b/src/backends/cl/backend.mk
index 9a83257272..c097a03327 100644
--- a/src/backends/cl/backend.mk
+++ b/src/backends/cl/backend.mk
@@ -40,7 +40,7 @@ BACKEND_SOURCES := \
workloads/ClDepthToSpaceWorkload.cpp \
workloads/ClDepthwiseConvolutionWorkload.cpp \
workloads/ClDequantizeWorkload.cpp \
- workloads/ClDivisionFloatWorkload.cpp \
+ workloads/ClDivisionWorkload.cpp \
workloads/ClExpWorkload.cpp \
workloads/ClFillWorkload.cpp \
workloads/ClFloorFloatWorkload.cpp \
diff --git a/src/backends/cl/test/ClCreateWorkloadTests.cpp b/src/backends/cl/test/ClCreateWorkloadTests.cpp
index 765409a426..e22479c25b 100644
--- a/src/backends/cl/test/ClCreateWorkloadTests.cpp
+++ b/src/backends/cl/test/ClCreateWorkloadTests.cpp
@@ -137,7 +137,7 @@ BOOST_AUTO_TEST_CASE(CreateMultiplicationUint8WorkloadTest)
BOOST_AUTO_TEST_CASE(CreateDivisionFloatWorkloadTest)
{
- ClCreateElementwiseWorkloadTest<ClDivisionFloatWorkload,
+ ClCreateElementwiseWorkloadTest<ClDivisionWorkload,
DivisionQueueDescriptor,
DivisionLayer,
armnn::DataType::Float32>();
@@ -145,7 +145,7 @@ BOOST_AUTO_TEST_CASE(CreateDivisionFloatWorkloadTest)
BOOST_AUTO_TEST_CASE(CreateDivisionFloat16WorkloadTest)
{
- ClCreateElementwiseWorkloadTest<ClDivisionFloatWorkload,
+ ClCreateElementwiseWorkloadTest<ClDivisionWorkload,
DivisionQueueDescriptor,
DivisionLayer,
armnn::DataType::Float16>();
diff --git a/src/backends/cl/workloads/CMakeLists.txt b/src/backends/cl/workloads/CMakeLists.txt
index 3a1b6b8432..04821bf4bb 100644
--- a/src/backends/cl/workloads/CMakeLists.txt
+++ b/src/backends/cl/workloads/CMakeLists.txt
@@ -34,8 +34,8 @@ list(APPEND armnnClBackendWorkloads_sources
ClDepthwiseConvolutionWorkload.hpp
ClDequantizeWorkload.cpp
ClDequantizeWorkload.hpp
- ClDivisionFloatWorkload.cpp
- ClDivisionFloatWorkload.hpp
+ ClDivisionWorkload.cpp
+ ClDivisionWorkload.hpp
ClExpWorkload.cpp
ClExpWorkload.hpp
ClFillWorkload.cpp
diff --git a/src/backends/cl/workloads/ClDivisionFloatWorkload.cpp b/src/backends/cl/workloads/ClDivisionWorkload.cpp
index 3df8d52f6d..be5f3b8225 100644
--- a/src/backends/cl/workloads/ClDivisionFloatWorkload.cpp
+++ b/src/backends/cl/workloads/ClDivisionWorkload.cpp
@@ -3,7 +3,7 @@
// SPDX-License-Identifier: MIT
//
-#include "ClDivisionFloatWorkload.hpp"
+#include "ClDivisionWorkload.hpp"
#include <aclCommon/ArmComputeUtils.hpp>
#include <backendsCommon/CpuTensorHandle.hpp>
@@ -31,12 +31,12 @@ arm_compute::Status ClDivisionWorkloadValidate(const TensorInfo& input0,
}
-ClDivisionFloatWorkload::ClDivisionFloatWorkload(const DivisionQueueDescriptor& descriptor,
- const WorkloadInfo& info,
- const arm_compute::CLCompileContext& clCompileContext)
- : FloatWorkload<DivisionQueueDescriptor>(descriptor, info)
+ClDivisionWorkload::ClDivisionWorkload(const DivisionQueueDescriptor& descriptor,
+ const WorkloadInfo& info,
+ const arm_compute::CLCompileContext& clCompileContext)
+ : BaseWorkload<DivisionQueueDescriptor>(descriptor, info)
{
- m_Data.ValidateInputsOutputs("ClDivisionFloatWorkload", 2, 1);
+ m_Data.ValidateInputsOutputs("ClDivisionWorkload", 2, 1);
arm_compute::ICLTensor& input0 = static_cast<IClTensorHandle*>(m_Data.m_Inputs[0])->GetTensor();
arm_compute::ICLTensor& input1 = static_cast<IClTensorHandle*>(m_Data.m_Inputs[1])->GetTensor();
@@ -47,9 +47,9 @@ ClDivisionFloatWorkload::ClDivisionFloatWorkload(const DivisionQueueDescriptor&
m_ArithmeticDivision.configure(clCompileContext, &input0, &input1, &output, activationInfo);
}
-void ClDivisionFloatWorkload::Execute() const
+void ClDivisionWorkload::Execute() const
{
- ARMNN_SCOPED_PROFILING_EVENT_CL("ClDivisionFloatWorkload_Execute");
+ ARMNN_SCOPED_PROFILING_EVENT_CL("ClDivisionWorkload_Execute");
RunClFunction(m_ArithmeticDivision, CHECK_LOCATION());
}
diff --git a/src/backends/cl/workloads/ClDivisionFloatWorkload.hpp b/src/backends/cl/workloads/ClDivisionWorkload.hpp
index 481b8b0a89..d0c27bb310 100644
--- a/src/backends/cl/workloads/ClDivisionFloatWorkload.hpp
+++ b/src/backends/cl/workloads/ClDivisionWorkload.hpp
@@ -17,14 +17,14 @@ arm_compute::Status ClDivisionWorkloadValidate(const TensorInfo& input0,
const TensorInfo& output,
const ActivationDescriptor* activationDescriptor = nullptr);
-class ClDivisionFloatWorkload : public FloatWorkload<DivisionQueueDescriptor>
+class ClDivisionWorkload : public BaseWorkload<DivisionQueueDescriptor>
{
public:
- ClDivisionFloatWorkload(const DivisionQueueDescriptor& descriptor,
- const WorkloadInfo& info,
- const arm_compute::CLCompileContext& clCompileContext);
+ ClDivisionWorkload(const DivisionQueueDescriptor& descriptor,
+ const WorkloadInfo& info,
+ const arm_compute::CLCompileContext& clCompileContext);
- using FloatWorkload<DivisionQueueDescriptor>::FloatWorkload;
+ using BaseWorkload<DivisionQueueDescriptor>::BaseWorkload;
void Execute() const override;
private:
diff --git a/src/backends/cl/workloads/ClMultiplicationWorkload.hpp b/src/backends/cl/workloads/ClMultiplicationWorkload.hpp
index 424f3d7045..7bc0db7ce9 100644
--- a/src/backends/cl/workloads/ClMultiplicationWorkload.hpp
+++ b/src/backends/cl/workloads/ClMultiplicationWorkload.hpp
@@ -32,6 +32,3 @@ private:
};
} //namespace armnn
-
-
-
diff --git a/src/backends/cl/workloads/ClWorkloads.hpp b/src/backends/cl/workloads/ClWorkloads.hpp
index f99a9fa11b..0ae7f4ec22 100644
--- a/src/backends/cl/workloads/ClWorkloads.hpp
+++ b/src/backends/cl/workloads/ClWorkloads.hpp
@@ -16,7 +16,7 @@
#include "ClDepthToSpaceWorkload.hpp"
#include "ClDepthwiseConvolutionWorkload.hpp"
#include "ClDequantizeWorkload.hpp"
-#include "ClDivisionFloatWorkload.hpp"
+#include "ClDivisionWorkload.hpp"
#include "ClExpWorkload.hpp"
#include "ClFillWorkload.hpp"
#include "ClFloorFloatWorkload.hpp"