aboutsummaryrefslogtreecommitdiff
path: root/delegate/src/test/TestUtils.cpp
diff options
context:
space:
mode:
authorNarumol Prangnawarat <narumol.prangnawarat@arm.com>2021-01-20 15:58:29 +0000
committerNarumol Prangnawarat <narumol.prangnawarat@arm.com>2021-01-25 17:56:59 +0000
commit0b51d5ad533f8ecde71f957077690195eea29ffc (patch)
treed04aaecd63deb8c67f4cea001bc4ddac3181911c /delegate/src/test/TestUtils.cpp
parente5617954db782628ca49919a627d01ee0088fb67 (diff)
downloadarmnn-0b51d5ad533f8ecde71f957077690195eea29ffc.tar.gz
IVGCVSW-5619 Add OptimizerOptions and NetworkProperties to ArmNN Delegate
* Add OptimizerOptions, NetworkProperties, DebugCallbackFunction to DelegateOptions * Enable OptimizerOptions when the network is being optimized * Enable NetworkProperties when loading network * Enable DebugCallbackFunction * Add error message when loading network * Log warning instead of error when operator is not supported but could fallback to another backend * Improve uint16_t CompareData * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I353035afb442774bfeb1c62570a90755c2ceaf38
Diffstat (limited to 'delegate/src/test/TestUtils.cpp')
-rw-r--r--delegate/src/test/TestUtils.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/delegate/src/test/TestUtils.cpp b/delegate/src/test/TestUtils.cpp
index 2787147639..1bc5786112 100644
--- a/delegate/src/test/TestUtils.cpp
+++ b/delegate/src/test/TestUtils.cpp
@@ -71,17 +71,22 @@ void CompareData(Half tensor1[], Half tensor2[], size_t tensorSize)
void CompareData(TfLiteFloat16 tensor1[], TfLiteFloat16 tensor2[], size_t tensorSize)
{
+ uint16_t tolerance = 1;
for (size_t i = 0; i < tensorSize; i++)
{
- CHECK(tensor1[i].data == tensor2[i].data);
+ uint16_t tensor1Data = tensor1[i].data;
+ uint16_t tensor2Data = tensor2[i].data;
+ CHECK(std::max(tensor1Data, tensor2Data) - std::min(tensor1Data, tensor2Data) <= tolerance);
}
}
-void CompareData(TfLiteFloat16 tensor1[], Half tensor2[], size_t tensorSize)
-{
+void CompareData(TfLiteFloat16 tensor1[], Half tensor2[], size_t tensorSize) {
+ uint16_t tolerance = 1;
for (size_t i = 0; i < tensorSize; i++)
{
- CHECK(tensor1[i].data == half_float::detail::float2half<std::round_indeterminate, float>(tensor2[i]));
+ uint16_t tensor1Data = tensor1[i].data;
+ uint16_t tensor2Data = half_float::detail::float2half<std::round_indeterminate, float>(tensor2[i]);
+ CHECK(std::max(tensor1Data, tensor2Data) - std::min(tensor1Data, tensor2Data) <= tolerance);
}
}