aboutsummaryrefslogtreecommitdiff
path: root/tests/validate_examples/cl_gemm.cpp
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2019-11-21 14:10:25 +0000
committerGeorgios Pinitas <georgios.pinitas@arm.com>2019-11-27 10:56:10 +0000
commit448a81fcec04333364a1e3266d5081596d3a0477 (patch)
treebd5382a58fae39a8014157423a8ff339d39e14b9 /tests/validate_examples/cl_gemm.cpp
parent449cbf9c20287fca9a56898cdc5821c061a66ce3 (diff)
downloadComputeLibrary-448a81fcec04333364a1e3266d5081596d3a0477.tar.gz
COMPMID-2805: Add QASYMM8_SIGNED support in NEGEMMLowpOutputStage
Add support from requantizing down from S32 to Int8 with fixed point requantization. This involves the following: - Compute fixed point multiplication between each entry of input by result_fixedpoint_multiplier - Add bias to final result if bias tensor is not a nullptr - Round to nearest division by a power-of-two using result_shift - Add offset to each result - Clamp the value between the specified min and max bounds - Cast to int8 data type Change-Id: I641b3fac0833c568d8565ccb859bbc561a24c17d Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-on: https://review.mlplatform.org/c/2340 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'tests/validate_examples/cl_gemm.cpp')
-rw-r--r--tests/validate_examples/cl_gemm.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/tests/validate_examples/cl_gemm.cpp b/tests/validate_examples/cl_gemm.cpp
index 128c5f6e7f..39fe111448 100644
--- a/tests/validate_examples/cl_gemm.cpp
+++ b/tests/validate_examples/cl_gemm.cpp
@@ -321,11 +321,11 @@ public:
SimpleTensor<int32_t> biases{ TensorShape(N), DataType::S32, 1 };
// Fill bias
fill(biases, 3);
- ref_dst = reference::gemmlowp_quantize_down_int32_to_uint8_scale_by_fixedpoint<int32_t>(ref_tmp_dst, biases, dst_multiplier_vec, dst_shift_vec, offset_dst);
+ ref_dst = reference::gemmlowp_quantize_down_scale_by_fixedpoint<int32_t, uint8_t>(ref_tmp_dst, biases, dst_multiplier_vec, dst_shift_vec, offset_dst);
}
else
{
- ref_dst = reference::gemmlowp_quantize_down_int32_to_uint8_scale_by_fixedpoint<int32_t>(ref_tmp_dst, dst_multiplier_vec, dst_shift_vec, offset_dst);
+ ref_dst = reference::gemmlowp_quantize_down_scale_by_fixedpoint<int32_t, uint8_t>(ref_tmp_dst, dst_multiplier_vec, dst_shift_vec, offset_dst);
}
validate(CLAccessor(dst), ref_dst);
break;