aboutsummaryrefslogtreecommitdiff
path: root/tests/validation/Helpers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/validation/Helpers.cpp')
-rw-r--r--tests/validation/Helpers.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/tests/validation/Helpers.cpp b/tests/validation/Helpers.cpp
index cb4d87601c..560460fd33 100644
--- a/tests/validation/Helpers.cpp
+++ b/tests/validation/Helpers.cpp
@@ -426,7 +426,7 @@ QuantizationHint suggest_matmul_dst_q_info_and_bias(const QuantizationInfo &lhs_
}
QuantizationHint suggest_mac_dst_q_info_and_bias(
- const QuantizationInfo &a_q_info, const QuantizationInfo &b_q_info, int32_t K, DataType data_type, float bias_fraction)
+ const QuantizationInfo &a_q_info, const QuantizationInfo &b_q_info, int32_t K, DataType data_type, float bias_fraction, int num_sd)
{
QuantizationInfo c_q_info;
@@ -554,8 +554,8 @@ QuantizationHint suggest_mac_dst_q_info_and_bias(
const float var_d = std_d * std_d;
// Also calculate the suggested bias range
- const int32_t min_bias = mean_d_int - 2 * std_d_int;
- const int32_t max_bias = mean_d_int + 2 * std_d_int;
+ const int32_t min_bias = mean_d_int - (num_sd * std_d_int);
+ const int32_t max_bias = mean_d_int + (num_sd * std_d_int);
// Output/C stats
const float mean_out = K * mean_a * mean_b + mean_d;
@@ -563,8 +563,8 @@ QuantizationHint suggest_mac_dst_q_info_and_bias(
const float std_out = sqrt(var_out);
// Output quantization setup
- const float scale_out = 4 * std_out / 255;
- const int32_t offset_out = static_cast<int32_t>(t_min - (mean_out - 2.f * std_out) / scale_out);
+ const float scale_out = (2 * num_sd) * std_out / 255;
+ const int32_t offset_out = static_cast<int32_t>(t_min - (mean_out - (num_sd * std_out)) / scale_out);
c_q_info = QuantizationInfo(scale_out, offset_out);