diff options
author | Michalis Spyrou <michalis.spyrou@arm.com> | 2019-11-28 11:31:23 +0000 |
---|---|---|
committer | Michalis Spyrou <michalis.spyrou@arm.com> | 2019-12-05 11:58:51 +0000 |
commit | 8d4d1b85bc57d5f76f3939bb422e44df68dc2342 (patch) | |
tree | 8de9dd3c7bec7ea59caa4d6e70b3bbeac877c8b8 /tests/validation/fixtures | |
parent | 25a6b67cd8188e5a968c0c89adf99f874c7eecb4 (diff) | |
download | ComputeLibrary-8d4d1b85bc57d5f76f3939bb422e44df68dc2342.tar.gz |
COMPMID-2796: Add support for QASYMM8_SIGNED in NEActivationLayer and NEPReluLayer
Change-Id: I089fd19a6beab7779d690bc9ace327f661c2753d
Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com>
Reviewed-on: https://review.mlplatform.org/c/2407
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Diffstat (limited to 'tests/validation/fixtures')
-rw-r--r-- | tests/validation/fixtures/ActivationLayerFixture.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/validation/fixtures/ActivationLayerFixture.h b/tests/validation/fixtures/ActivationLayerFixture.h index f6d43ddd89..3294986519 100644 --- a/tests/validation/fixtures/ActivationLayerFixture.h +++ b/tests/validation/fixtures/ActivationLayerFixture.h @@ -150,8 +150,9 @@ protected: private: QuantizationInfo calculate_output_quantization_info(DataType dt, const ActivationLayerInfo &act_info, const QuantizationInfo &default_qinfo) { - auto qasymm8_max = float(std::numeric_limits<uint8_t>::max()) + 1.f; - auto qsymm16_max = float(std::numeric_limits<int16_t>::max()) + 1.f; + auto qasymm8_max = float(std::numeric_limits<uint8_t>::max()) + 1.f; + auto qasymm8_signed_max = float(std::numeric_limits<int8_t>::max()) + 1.f; + auto qsymm16_max = float(std::numeric_limits<int16_t>::max()) + 1.f; switch(act_info.activation()) { @@ -164,6 +165,10 @@ private: { return QuantizationInfo(1.f / (0.5 * qasymm8_max), int(0.5 * qasymm8_max)); } + else if(dt == DataType::QASYMM8_SIGNED) + { + return QuantizationInfo(1.f / qasymm8_signed_max, 0); + } else { return default_qinfo; @@ -177,6 +182,10 @@ private: { return QuantizationInfo(1.f / qasymm8_max, 0); } + else if(dt == DataType::QASYMM8_SIGNED) + { + return QuantizationInfo(1.f / (2.f * qasymm8_signed_max), -int(qasymm8_signed_max)); + } else { return default_qinfo; |