diff options
author | Jerry Ge <jerry.ge@arm.com> | 2023-07-19 23:08:16 +0000 |
---|---|---|
committer | Jerry Ge <jerry.ge@arm.com> | 2023-07-25 22:49:17 +0000 |
commit | 9c9c8dafe8f9a32bd70aee268cd537b93865a3ba (patch) | |
tree | e94fc471261b9f72bef86033fbc76022f55d5de8 /reference_model/include/verify.h | |
parent | c1e13432b4a218781afd6b0171d4afff11730433 (diff) | |
download | reference_model-9c9c8dafe8f9a32bd70aee268cd537b93865a3ba.tar.gz |
Run clang-format and update copyright
- Also added run clang-format to pre-commit runs
Signed-off-by: Jerry Ge <jerry.ge@arm.com>
Change-Id: I4e59ac0afbaa30dce0773aa63d92a1a3b119e2f3
Diffstat (limited to 'reference_model/include/verify.h')
-rw-r--r-- | reference_model/include/verify.h | 79 |
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 } |