IVGCVSW-3571 Add Gpu backend to CI tests for Android Q
authorSadik Armagan <sadik.armagan@arm.com>
Wed, 31 Jul 2019 15:36:27 +0000 (16:36 +0100)
committerSadik Armagan <sadik.armagan@arm.com>
Wed, 31 Jul 2019 15:36:27 +0000 (16:36 +0100)
 * Fixed Quantized FP16 failures on GpuAcc

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ia6372da1305c3e826f56ba537e11acf7875c2d74

src/backends/backendsCommon/WorkloadData.cpp

index 2000ce4..6667eab 100644 (file)
@@ -1806,10 +1806,13 @@ void QuantizeQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const
     const TensorInfo& inputTensorInfo  = workloadInfo.m_InputTensorInfos[0];
     const TensorInfo& outputTensorInfo = workloadInfo.m_OutputTensorInfos[0];
 
-    if (inputTensorInfo.GetDataType() != DataType::Float32)
+    std::vector<DataType> supportedTypes =
     {
-        throw InvalidArgumentException(descriptorName + ": Quantize only accepts Float32 inputs.");
-    }
+            DataType::Float32,
+            DataType::Float16
+    };
+
+    ValidateDataTypes(inputTensorInfo, supportedTypes, descriptorName);
 
     if (outputTensorInfo.GetDataType() != DataType::QuantisedAsymm8 &&
         outputTensorInfo.GetDataType() != DataType::QuantisedSymm16)
@@ -2117,10 +2120,13 @@ void DequantizeQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const
         throw InvalidArgumentException(descriptorName + ": Input to dequantize layer must be quantized type.");
     }
 
-    if (outputTensorInfo.GetDataType() != DataType::Float32)
+    std::vector<DataType> supportedTypes =
     {
-        throw InvalidArgumentException(descriptorName + ": Output of dequantize layer must be Float32 type.");
-    }
+            DataType::Float32,
+            DataType::Float16
+    };
+
+    ValidateDataTypes(outputTensorInfo, supportedTypes, descriptorName);
 }
 
 void MergeQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const