diff options
author | James Conroy <james.conroy@arm.com> | 2020-11-12 19:26:29 +0000 |
---|---|---|
committer | mike.kelly <mike.kelly@arm.com> | 2020-11-13 11:01:34 +0000 |
commit | 8502adeafbbb1db0acefa62560d93453e38dcadb (patch) | |
tree | 6eab85e6f0abcd643f6c8367ac080ceeaa227fb2 /src/backends/backendsCommon/WorkloadData.cpp | |
parent | 30dfc543883bd139d59fcba2dd8cf83e7fc7ee6a (diff) | |
download | armnn-8502adeafbbb1db0acefa62560d93453e38dcadb.tar.gz |
IVGCVSW-5495 Fix validation for per-channel quant
* Now enter if block if bias OR weights have
multiple quantization scales.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I5eba0ceac9b347d0e3467e86d72d587b749b9521
Diffstat (limited to 'src/backends/backendsCommon/WorkloadData.cpp')
-rw-r--r-- | src/backends/backendsCommon/WorkloadData.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp index b39d6b3c4c..676559cb2c 100644 --- a/src/backends/backendsCommon/WorkloadData.cpp +++ b/src/backends/backendsCommon/WorkloadData.cpp @@ -230,7 +230,7 @@ void ValidateBiasTensorQuantization(const TensorInfo& biasTensor, to_string(biasTensor.GetQuantizationOffset())); } - if (biasTensor.HasMultipleQuantizationScales()) + if (biasTensor.HasMultipleQuantizationScales() || weightsTensorInfo.HasMultipleQuantizationScales()) { // Validate per-axis quantization scales const std::vector<float>& weightScales = weightsTensorInfo.GetQuantizationScales(); @@ -239,8 +239,9 @@ void ValidateBiasTensorQuantization(const TensorInfo& biasTensor, if (weightScales.size() != biasScales.size()) { std::stringstream msg; - msg << descName << ": Expected matchhing number of per-axis quantization scales, but got different " - << "values: weights=" << weightScales.size() << ", biases=" << biasScales.size(); + msg << descName << ": Expected matching number of per-axis quantization scales for weights and bias, " + << "but got different values. This is currently unsupported: weights=" << weightScales.size() + << ", biases=" << biasScales.size(); throw InvalidArgumentException(msg.str(), CHECK_LOCATION()); } |