aboutsummaryrefslogtreecommitdiff
path: root/reference_model/include/verify.h
diff options
context:
space:
mode:
Diffstat (limited to 'reference_model/include/verify.h')
-rw-r--r--reference_model/include/verify.h79
1 files changed, 40 insertions, 39 deletions
diff --git a/reference_model/include/verify.h b/reference_model/include/verify.h
index 0ac35fe..d294388 100644
--- a/reference_model/include/verify.h
+++ b/reference_model/include/verify.h
@@ -21,50 +21,51 @@
#include <cstddef>
#ifdef __cplusplus
-extern "C" {
+extern "C"
+{
#endif /* __cplusplus */
-// Check result
-//
-// Error is valid only and only if is_valid is true
-struct CheckResult
-{
- bool is_valid;
- double error;
-};
+ // Check result
+ //
+ // Error is valid only and only if is_valid is true
+ struct CheckResult
+ {
+ bool is_valid;
+ double error;
+ };
-/// Validate and calculate tensor element error when using an fp32 accumulator
-///
-/// \param ref Tensor element calculated using fp64
-/// \param bnd Tensor element calculated using fp64 on abs(input, weights)
-/// \param imp Tensor element calculated through the implementation
-/// \param KS The kernel size
-///
-/// \return Output error
-CheckResult tosa_validate_element_accfp32(double ref, double bnd, float imp, size_t KS);
+ /// Validate and calculate tensor element error when using an fp32 accumulator
+ ///
+ /// \param ref Tensor element calculated using fp64
+ /// \param bnd Tensor element calculated using fp64 on abs(input, weights)
+ /// \param imp Tensor element calculated through the implementation
+ /// \param KS The kernel size
+ ///
+ /// \return Output error
+ CheckResult tosa_validate_element_accfp32(double ref, double bnd, float imp, size_t KS);
-/// Validate the accumulated output error
-///
-/// \param err_sum Sum of error of all the tensor elements within a tensor
-/// \param err_sum_sq Sum of error squares of all the tensor elements within a tensor
-/// \param T Number of output (dot-product) elements
-/// \param KS The kernel size
-/// \param S Test set used as a input/weight generator
-///
-/// \return True if the error is within margin else false
-bool tosa_validate_output_error(double err_sum, double err_sum_sq, size_t T, size_t KS, int S);
+ /// Validate the accumulated output error
+ ///
+ /// \param err_sum Sum of error of all the tensor elements within a tensor
+ /// \param err_sum_sq Sum of error squares of all the tensor elements within a tensor
+ /// \param T Number of output (dot-product) elements
+ /// \param KS The kernel size
+ /// \param S Test set used as a input/weight generator
+ ///
+ /// \return True if the error is within margin else false
+ bool tosa_validate_output_error(double err_sum, double err_sum_sq, size_t T, size_t KS, int S);
-/// Validate error of whole vector of output data
-///
-/// \param ref Output elements calculated using fp64
-/// \param bnd Output elements calculated using fp64 on abs(input, weights)
-/// \param imp Output elements calculated using the implementation
-/// \param T Number of elements in outputs (need to match)
-/// \param KS The kernel size
-/// \param S Test set used as a input/weight generator
-///
-/// \return True if the error is within margin else false
-bool tosa_validate_data_fp32(const double* ref, const double* bnd, const float* imp, size_t T, size_t KS, int S);
+ /// Validate error of whole vector of output data
+ ///
+ /// \param ref Output elements calculated using fp64
+ /// \param bnd Output elements calculated using fp64 on abs(input, weights)
+ /// \param imp Output elements calculated using the implementation
+ /// \param T Number of elements in outputs (need to match)
+ /// \param KS The kernel size
+ /// \param S Test set used as a input/weight generator
+ ///
+ /// \return True if the error is within margin else false
+ bool tosa_validate_data_fp32(const double* ref, const double* bnd, const float* imp, size_t T, size_t KS, int S);
#ifdef __cplusplus
}