aboutsummaryrefslogtreecommitdiff
path: root/tests/validation/fixtures
diff options
context:
space:
mode:
authorMichalis Spyrou <michalis.spyrou@arm.com>2019-11-28 11:31:23 +0000
committerMichalis Spyrou <michalis.spyrou@arm.com>2019-12-05 11:58:51 +0000
commit8d4d1b85bc57d5f76f3939bb422e44df68dc2342 (patch)
tree8de9dd3c7bec7ea59caa4d6e70b3bbeac877c8b8 /tests/validation/fixtures
parent25a6b67cd8188e5a968c0c89adf99f874c7eecb4 (diff)
downloadComputeLibrary-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.h13
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;