diff options
author | Teresa Charlin <teresa.charlinreyes@arm.com> | 2022-07-07 14:24:59 +0100 |
---|---|---|
committer | Nikhil Raj <nikhil.raj@arm.com> | 2022-07-28 15:08:22 +0100 |
commit | 83b429107a4bb1fe84e756c29d8ad3771d4beeee (patch) | |
tree | c383d2692365a8166b949f90267e152f0624704f /tests/ExecuteNetwork/TfliteExecutor.hpp | |
parent | 46f298657c14c1b0a4b0690ecce49f64dc0a7010 (diff) | |
download | armnn-83b429107a4bb1fe84e756c29d8ad3771d4beeee.tar.gz |
Revert "Revert "IVGCVSW-6650 Refactor ExecuteNetwork""
This reverts commit 1a7f033768acb27da11503bd29abb468d2e77f9e.
List of fixes to be able to add this code again:
* "emplacing_back" the vector inputTensors into the vector m_InputTensorsVec outside the for loop
* GetIOInfo() uses IOptimizedNetwork instead of INetwork, where the infered shapes are not saved
* Add missing data type Signed32 to SetupInputsAndOutputs()
* PrintOutputTensors() prints the actual output without dequantizing
* Add profilingDetailsMethod as input in networkProperties in ArmNNExecutor constructor
* Fix typos
Change-Id: I91de166f87228282db3efa27431fe91458834442
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ic6634d48892d11e5f146cdf285e1e333e93e9937
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Diffstat (limited to 'tests/ExecuteNetwork/TfliteExecutor.hpp')
-rw-r--r-- | tests/ExecuteNetwork/TfliteExecutor.hpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/ExecuteNetwork/TfliteExecutor.hpp b/tests/ExecuteNetwork/TfliteExecutor.hpp new file mode 100644 index 0000000000..623d6357eb --- /dev/null +++ b/tests/ExecuteNetwork/TfliteExecutor.hpp @@ -0,0 +1,35 @@ +// +// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. +// SPDX-License-Identifier: MIT +// +#pragma once + +#include "IExecutor.hpp" +#include "NetworkExecutionUtils/NetworkExecutionUtils.hpp" +#include "ExecuteNetworkProgramOptions.hpp" +#include "armnn/utility/NumericCast.hpp" +#include "armnn/utility/Timer.hpp" + +#include <armnn_delegate.hpp> +#include <DelegateOptions.hpp> + +#include <tensorflow/lite/c/common.h> +#include <tensorflow/lite/interpreter.h> +#include <tensorflow/lite/kernels/register.h> + +using namespace tflite; +class TfLiteExecutor : public IExecutor +{ +public: + TfLiteExecutor(const ExecuteNetworkParams& m_Params); + + std::vector<const void*> Execute() override; + void PrintNetworkInfo() override{}; + void CompareAndPrintResult(std::vector<const void*> otherOutput) override; + +private: + std::unique_ptr<tflite::FlatBufferModel> m_Model; + const ExecuteNetworkParams& m_Params; + std::unique_ptr<Interpreter> m_TfLiteInterpreter; +}; + |