aboutsummaryrefslogtreecommitdiff
path: root/reference_model/src/verify
diff options
context:
space:
mode:
Diffstat (limited to 'reference_model/src/verify')
-rw-r--r--reference_model/src/verify/verify_abs_error.cc3
-rw-r--r--reference_model/src/verify/verify_utils.cc7
-rw-r--r--reference_model/src/verify/verify_utils.h1
3 files changed, 8 insertions, 3 deletions
diff --git a/reference_model/src/verify/verify_abs_error.cc b/reference_model/src/verify/verify_abs_error.cc
index a7b7bc2..125045e 100644
--- a/reference_model/src/verify/verify_abs_error.cc
+++ b/reference_model/src/verify/verify_abs_error.cc
@@ -20,7 +20,6 @@
#include "half.hpp"
#include "verifiers.h"
-
namespace TosaReference
{
@@ -36,7 +35,7 @@ double calcErrorBound(double referenceValue, double boundsValue, const void* cfg
{
valBound = std::max(cfg->lowerBound, valBound);
}
- return exp2(-AccPrecision<OutType>::normal_frac) * valBound;
+ return exp2(-AccPrecision<OutType>::normal_frac / cfg->normalDivisor) * valBound;
}
} // namespace
diff --git a/reference_model/src/verify/verify_utils.cc b/reference_model/src/verify/verify_utils.cc
index d598e2c..50a98e5 100644
--- a/reference_model/src/verify/verify_utils.cc
+++ b/reference_model/src/verify/verify_utils.cc
@@ -80,6 +80,10 @@ void from_json(const nlohmann::json& j, AbsErrorVerifyInfo& absErrorInfo)
{
j.at("lower_bound").get_to(absErrorInfo.lowerBound);
}
+ if (j.contains("normal_divisor"))
+ {
+ j.at("normal_divisor").get_to(absErrorInfo.normalDivisor);
+ }
}
void from_json(const nlohmann::json& j, RelativeVerifyInfo& rInfo)
@@ -108,7 +112,8 @@ void from_json(const nlohmann::json& j, VerifyConfig& cfg)
{
j.at("reduce_product_info").get_to(cfg.reduceProductInfo);
}
- cfg.absErrorInfo.lowerBound = 0;
+ cfg.absErrorInfo.lowerBound = 0;
+ cfg.absErrorInfo.normalDivisor = 1;
if (j.contains("abs_error_info"))
{
j.at("abs_error_info").get_to(cfg.absErrorInfo);
diff --git a/reference_model/src/verify/verify_utils.h b/reference_model/src/verify/verify_utils.h
index f53838a..9144317 100644
--- a/reference_model/src/verify/verify_utils.h
+++ b/reference_model/src/verify/verify_utils.h
@@ -82,6 +82,7 @@ struct AbsErrorVerifyInfo
AbsErrorVerifyInfo() = default;
double lowerBound;
+ double normalDivisor;
};
/// \brief relative verification meta-data