From 616e775763280992de92287b129dc335be91a24c Mon Sep 17 00:00:00 2001 From: arovir01 Date: Mon, 1 Oct 2018 17:08:59 +0100 Subject: IVGCVSW-1913: Fix for ValidationTest.concat_float_3_relaxed * Added RefPermuteFloat16Workload to serve as a fallback when CL does not support the required permute configuration for FP16 * Move Half.hpp to armnnUtils as the utils library should not be including private header files from the armnn library Change-Id: Ibf0f698451e8406f7ed7cce470dab60b6d16361d --- src/backends/reference/RefWorkloadFactory.cpp | 3 ++- src/backends/reference/workloads/RefConvertFp16ToFp32Workload.cpp | 4 +++- src/backends/reference/workloads/RefConvertFp32ToFp16Workload.cpp | 4 ++-- src/backends/reference/workloads/RefPermuteWorkload.cpp | 1 + src/backends/reference/workloads/RefPermuteWorkload.hpp | 1 + src/backends/reference/workloads/RefWorkloadUtils.hpp | 2 +- 6 files changed, 10 insertions(+), 5 deletions(-) (limited to 'src/backends/reference') diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp index 582c691a18..d7d2e27d59 100644 --- a/src/backends/reference/RefWorkloadFactory.cpp +++ b/src/backends/reference/RefWorkloadFactory.cpp @@ -114,7 +114,8 @@ std::unique_ptr RefWorkloadFactory::CreateFullyConnected( std::unique_ptr RefWorkloadFactory::CreatePermute(const PermuteQueueDescriptor& descriptor, const WorkloadInfo& info) const { - return MakeWorkload(descriptor, info); + return armnn::MakeWorkload + (descriptor, info); } std::unique_ptr RefWorkloadFactory::CreatePooling2d(const Pooling2dQueueDescriptor& descriptor, diff --git a/src/backends/reference/workloads/RefConvertFp16ToFp32Workload.cpp b/src/backends/reference/workloads/RefConvertFp16ToFp32Workload.cpp index e148bf6a9d..b01246b1e9 100644 --- a/src/backends/reference/workloads/RefConvertFp16ToFp32Workload.cpp +++ b/src/backends/reference/workloads/RefConvertFp16ToFp32Workload.cpp @@ -4,10 +4,12 @@ // #include "RefConvertFp16ToFp32Workload.hpp" -#include "Half.hpp" + #include "RefWorkloadUtils.hpp" #include "FloatingPointConverter.hpp" +#include + namespace armnn { diff --git a/src/backends/reference/workloads/RefConvertFp32ToFp16Workload.cpp b/src/backends/reference/workloads/RefConvertFp32ToFp16Workload.cpp index efaaf8e1ad..99e3541dd6 100644 --- a/src/backends/reference/workloads/RefConvertFp32ToFp16Workload.cpp +++ b/src/backends/reference/workloads/RefConvertFp32ToFp16Workload.cpp @@ -5,12 +5,12 @@ #include "RefConvertFp32ToFp16Workload.hpp" -#include "Half.hpp" #include "FloatingPointConverter.hpp" #include "RefWorkloadUtils.hpp" - #include "Profiling.hpp" +#include "armnnUtils/Half.hpp" + namespace armnn { diff --git a/src/backends/reference/workloads/RefPermuteWorkload.cpp b/src/backends/reference/workloads/RefPermuteWorkload.cpp index 4093ff38f4..df5015636b 100644 --- a/src/backends/reference/workloads/RefPermuteWorkload.cpp +++ b/src/backends/reference/workloads/RefPermuteWorkload.cpp @@ -26,6 +26,7 @@ void RefPermuteWorkload::Execute() const armnnUtils::Permute(GetTensorInfo(dst).GetShape(), mappings, GetConstCpuData(src), GetCpuData(dst)); } +template class RefPermuteWorkload; template class RefPermuteWorkload; template class RefPermuteWorkload; diff --git a/src/backends/reference/workloads/RefPermuteWorkload.hpp b/src/backends/reference/workloads/RefPermuteWorkload.hpp index 2cc176d205..841a080dfd 100644 --- a/src/backends/reference/workloads/RefPermuteWorkload.hpp +++ b/src/backends/reference/workloads/RefPermuteWorkload.hpp @@ -27,6 +27,7 @@ public: void Execute() const override; }; +using RefPermuteFloat16Workload = RefPermuteWorkload; using RefPermuteFloat32Workload = RefPermuteWorkload; using RefPermuteUint8Workload = RefPermuteWorkload; diff --git a/src/backends/reference/workloads/RefWorkloadUtils.hpp b/src/backends/reference/workloads/RefWorkloadUtils.hpp index 153c519350..67a1f5e867 100644 --- a/src/backends/reference/workloads/RefWorkloadUtils.hpp +++ b/src/backends/reference/workloads/RefWorkloadUtils.hpp @@ -9,7 +9,7 @@ #include #include -#include +#include #include -- cgit v1.2.1