From 1da02363187db5f0a11da261d81098c2bea7a570 Mon Sep 17 00:00:00 2001 From: Mike Kelly Date: Thu, 1 Aug 2019 08:43:57 +0100 Subject: IVGCVSW-3571 Fix VTS Test Skips * Fixed FP16 failures on Max, Min, BatchToSpace on Gpu * Fixed Signed32 skips on Maximum and Minimum Signed-off-by: Sadik Armagan Signed-off-by: Mike Kelly Change-Id: I4bea19af1a0ae4c8950af8c6d5d68622cdd9b674 --- src/backends/backendsCommon/WorkloadData.cpp | 5 +++++ src/backends/reference/RefLayerSupport.cpp | 6 ++++-- src/backends/reference/RefWorkloadFactory.cpp | 8 ++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp index 6667eabdc5..88cd6a69d6 100644 --- a/src/backends/backendsCommon/WorkloadData.cpp +++ b/src/backends/backendsCommon/WorkloadData.cpp @@ -1715,7 +1715,9 @@ void MaximumQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const std::vector supportedTypes = { + DataType::Float16, DataType::Float32, + DataType::Signed32, DataType::QuantisedAsymm8, DataType::QuantisedSymm16 }; @@ -1834,6 +1836,7 @@ void BatchToSpaceNdQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) c std::vector supportedTypes = { DataType::Float32, + DataType::Float16, DataType::QuantisedAsymm8, DataType::QuantisedSymm16 }; @@ -1910,7 +1913,9 @@ void MinimumQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const std::vector supportedTypes = { + DataType::Float16, DataType::Float32, + DataType::Signed32, DataType::QuantisedAsymm8, DataType::QuantisedSymm16 }; diff --git a/src/backends/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp index ba1623af48..df9ba1f255 100644 --- a/src/backends/reference/RefLayerSupport.cpp +++ b/src/backends/reference/RefLayerSupport.cpp @@ -1034,8 +1034,9 @@ bool RefLayerSupport::IsMaximumSupported(const TensorInfo& input0, { bool supported = true; - std::array supportedTypes = { + std::array supportedTypes = { DataType::Float32, + DataType::Signed32, DataType::QuantisedAsymm8, DataType::QuantisedSymm16 }; @@ -1163,8 +1164,9 @@ bool RefLayerSupport::IsMinimumSupported(const TensorInfo& input0, { bool supported = true; - std::array supportedTypes = { + std::array supportedTypes = { DataType::Float32, + DataType::Signed32, DataType::QuantisedAsymm8, DataType::QuantisedSymm16 }; diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp index 925eb6ad90..240acecbad 100644 --- a/src/backends/reference/RefWorkloadFactory.cpp +++ b/src/backends/reference/RefWorkloadFactory.cpp @@ -380,6 +380,10 @@ std::unique_ptr RefWorkloadFactory::CreateSubtraction( std::unique_ptr RefWorkloadFactory::CreateMaximum( const MaximumQueueDescriptor& descriptor, const WorkloadInfo& info) const { + if (IsFloat16(info)) + { + return MakeWorkload(descriptor, info); + } return std::make_unique(descriptor, info); } @@ -396,6 +400,10 @@ std::unique_ptr RefWorkloadFactory::CreateMean( std::unique_ptr RefWorkloadFactory::CreateMinimum( const MinimumQueueDescriptor& descriptor, const WorkloadInfo& info) const { + if (IsFloat16(info)) + { + return MakeWorkload(descriptor, info); + } return std::make_unique(descriptor, info); } -- cgit v1.2.1