diff options
Diffstat (limited to 'src/backends/neon/NeonLayerSupport.cpp')
-rw-r--r-- | src/backends/neon/NeonLayerSupport.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/backends/neon/NeonLayerSupport.cpp b/src/backends/neon/NeonLayerSupport.cpp index 5410ef42df..ed0f41a888 100644 --- a/src/backends/neon/NeonLayerSupport.cpp +++ b/src/backends/neon/NeonLayerSupport.cpp @@ -279,6 +279,12 @@ bool NeonLayerSupport::IsConvolution2dSupported(const TensorInfo& input, return false; } + // Multiplier > 1.0f currently not supported in ACL + if ((input.GetQuantizationScale() * weights.GetQuantizationScale()) / output.GetQuantizationScale() > 1.0f) + { + return false; + } + FORWARD_WORKLOAD_VALIDATE_FUNC(NeonConvolution2dWorkloadValidate, reasonIfUnsupported, input, @@ -312,6 +318,12 @@ bool NeonLayerSupport::IsDepthwiseConvolutionSupported(const TensorInfo& input, return false; } + // Multiplier > 1.0f currently not supported in ACL + if ((input.GetQuantizationScale() * weights.GetQuantizationScale()) / output.GetQuantizationScale() > 1.0f) + { + return false; + } + FORWARD_WORKLOAD_VALIDATE_FUNC(NeonDepthwiseConvolutionWorkloadValidate, reasonIfUnsupported, input, @@ -338,6 +350,12 @@ bool NeonLayerSupport::IsDilatedDepthwiseConvolutionSupported(const TensorInfo& const Optional<TensorInfo>& biases, Optional<std::string&> reasonIfUnsupported) const { + // Multiplier > 1.0f currently not supported in ACL + if ((input.GetQuantizationScale() * weights.GetQuantizationScale()) / output.GetQuantizationScale() > 1.0f) + { + return false; + } + FORWARD_WORKLOAD_VALIDATE_FUNC(NeonDepthwiseConvolutionWorkloadValidate, reasonIfUnsupported, input, @@ -738,6 +756,12 @@ bool NeonLayerSupport::IsTransposeConvolution2dSupported(const TensorInfo& input const Optional<TensorInfo>& biases, Optional<std::string&> reasonIfUnsupported) const { + // Multiplier > 1.0f currently not supported in ACL + if ((input.GetQuantizationScale() * weights.GetQuantizationScale()) / output.GetQuantizationScale() > 1.0f) + { + return false; + } + FORWARD_WORKLOAD_VALIDATE_FUNC(NeonTransposeConvolution2dWorkloadValidate, reasonIfUnsupported, input, |