diff options
author | Mohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com> | 2023-10-12 17:17:42 +0100 |
---|---|---|
committer | Mohmun02 <MohammedSuhail.Munshi@arm.com> | 2023-10-26 12:29:35 +0000 |
commit | 72b7471955f32d2fccb170ab1ab40c7eecfa7f44 (patch) | |
tree | 5afdef5f211f2ff6928e6abefad19458b2bb529d /src | |
parent | 074b985f3855193bb47fb4055abb6b12f09f48d7 (diff) | |
download | ComputeLibrary-72b7471955f32d2fccb170ab1ab40c7eecfa7f44.tar.gz |
Add check to disable dynamic bias with quantized datatypes in Conv2D layer
Resolves: COMPMID-6397
Signed-off-by: Mohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com>
Change-Id: Id4404f75dae03fd529db1adac5ab9ca48d08ec46
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/10498
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/runtime/NEON/functions/NEConvolutionLayer.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/runtime/NEON/functions/NEConvolutionLayer.cpp b/src/runtime/NEON/functions/NEConvolutionLayer.cpp index 37958fc2e9..8efebbbb1a 100644 --- a/src/runtime/NEON/functions/NEConvolutionLayer.cpp +++ b/src/runtime/NEON/functions/NEConvolutionLayer.cpp @@ -25,6 +25,7 @@ #include "arm_compute/core/PixelValue.h" #include "arm_compute/core/Utils.h" +#include "arm_compute/core/utils/DataTypeUtils.h" #include "arm_compute/core/Validate.h" #include "arm_compute/runtime/NEON/functions/NEFFTConvolutionLayer.h" @@ -132,6 +133,13 @@ Status NEConvolutionLayer::validate(const ITensorInfo *input, ARM_COMPUTE_RETURN_ERROR_ON_MSG(!weights->are_values_constant(), "Dynamic weights are not supported"); + // Biases with dynamic values are not supported with quantized inputs. + if (biases) + { + ARM_COMPUTE_RETURN_ERROR_ON_MSG((!biases->are_values_constant() && is_data_type_quantized(input->data_type())), + "Dynamic Biases are not supported with quantized input data."); + } + switch (cpu::CpuConv2d::get_convolution_method(input, weights, output, conv_info, weights_info, dilation, act_info, enable_fast_math)) { |