From f30f7d32b22020f80b21da7b008d8302cee9d395 Mon Sep 17 00:00:00 2001 From: Derek Lamberti Date: Tue, 9 Apr 2019 10:25:02 +0100 Subject: IVGCVSW-2946 RefElementwiseWorkload configures prior to first execute + Added PostAllocationConfigure() method to workload interface + Elementwise function now deduces types based on Functor - Replaced RefComparisonWorkload with RefElementwiseWorkload specialization + Fixed up unit tests and minor formatting Change-Id: I33d08797767bba01cf4efb2904920ce0f950a4fe Signed-off-by: Derek Lamberti --- .../reference/workloads/RefComparisonWorkload.cpp | 76 ---------------------- 1 file changed, 76 deletions(-) delete mode 100644 src/backends/reference/workloads/RefComparisonWorkload.cpp (limited to 'src/backends/reference/workloads/RefComparisonWorkload.cpp') diff --git a/src/backends/reference/workloads/RefComparisonWorkload.cpp b/src/backends/reference/workloads/RefComparisonWorkload.cpp deleted file mode 100644 index bb8bb04ad3..0000000000 --- a/src/backends/reference/workloads/RefComparisonWorkload.cpp +++ /dev/null @@ -1,76 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#include "RefComparisonWorkload.hpp" -#include "ElementwiseFunction.hpp" -#include "RefWorkloadUtils.hpp" -#include "Profiling.hpp" -#include - -namespace armnn { - -template -void RefComparisonWorkload::Execute() const -{ - ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, StringMapping::Instance().Get(DebugString)); - const TensorInfo& inputInfo0 = GetTensorInfo(m_Data.m_Inputs[0]); - const TensorInfo& inputInfo1 = GetTensorInfo(m_Data.m_Inputs[1]); - const TensorInfo& outputInfo = GetTensorInfo(m_Data.m_Outputs[0]); - - const TensorShape& inShape0 = inputInfo0.GetShape(); - const TensorShape& inShape1 = inputInfo1.GetShape(); - const TensorShape& outShape = outputInfo.GetShape(); - - switch(inputInfo0.GetDataType()) - { - case armnn::DataType::QuantisedAsymm8: - { - QASymm8Decoder decodeIterator0(GetInputTensorDataU8(0, m_Data), - inputInfo0.GetQuantizationScale(), - inputInfo0.GetQuantizationOffset()); - - QASymm8Decoder decodeIterator1(GetInputTensorDataU8(1, m_Data), - inputInfo1.GetQuantizationScale(), - inputInfo1.GetQuantizationOffset()); - - BooleanEncoder encodeIterator0(GetOutputTensorDataU8(0, m_Data)); - - ElementwiseFunction(inShape0, - inShape1, - outShape, - decodeIterator0, - decodeIterator1, - encodeIterator0); - break; - } - case armnn::DataType::Float32: - { - FloatDecoder decodeIterator0(GetInputTensorDataFloat(0, m_Data)); - FloatDecoder decodeIterator1(GetInputTensorDataFloat(1, m_Data)); - BooleanEncoder encodeIterator0(GetOutputTensorDataU8(0, m_Data)); - - ElementwiseFunction(inShape0, - inShape1, - outShape, - decodeIterator0, - decodeIterator1, - encodeIterator0); - break; - } - default: - BOOST_ASSERT_MSG(false, "RefComparisonWorkload: Not supported Data Type!"); - break; - } -} - -} - -template class armnn::RefComparisonWorkload, - armnn::EqualQueueDescriptor, - armnn::StringMapping::RefEqualWorkload_Execute>; - -template class armnn::RefComparisonWorkload, - armnn::GreaterQueueDescriptor, - armnn::StringMapping::RefGreaterWorkload_Execute>; -- cgit v1.2.1