25 #include <fmt/format.h> 27 #if defined(ARMNN_SERIALIZER) 30 #if defined(ARMNN_TF_LITE_PARSER) 33 #if defined(ARMNN_ONNX_PARSER) 42 std::vector<const void* >
Execute()
override;
54 std::unique_ptr<IParser> CreateParser();
58 void SetupInputsAndOutputs();
68 IOStorage(
size_t size)
70 m_Mem =
operator new(size);
74 operator delete(m_Mem);
76 IOStorage(IOStorage&& rhs)
78 this->m_Mem = rhs.m_Mem;
82 IOStorage(
const IOStorage& rhs) =
delete;
83 IOStorage& operator=(IOStorage& rhs) =
delete;
84 IOStorage& operator=(IOStorage&& rhs) =
delete;
91 std::vector<std::string> m_InputNames;
92 std::vector<std::string> m_OutputNames;
93 std::map<std::string, armnn::BindingPointInfo> m_InputInfoMap;
94 std::map<std::string, armnn::BindingPointInfo> m_OutputInfoMap;
98 std::vector<IOStorage> m_InputStorage;
99 std::vector<IOStorage> m_OutputStorage;
100 std::vector<armnn::InputTensors> m_InputTensorsVec;
101 std::vector<armnn::OutputTensors> m_OutputTensorsVec;
102 std::vector<std::vector<unsigned int>> m_ImportedInputIds;
103 std::vector<std::vector<unsigned int>> m_ImportedOutputIds;
104 std::shared_ptr<armnn::IRuntime> m_Runtime;
114 virtual ~IParser(){};
117 #if defined(ARMNN_SERIALIZER) 118 class ArmNNDeserializer :
public IParser
132 #if defined(ARMNN_TF_LITE_PARSER) 133 class TfliteParser :
public IParser
147 #if defined(ARMNN_ONNX_PARSER) 148 class OnnxParser :
public IParser
Main network class which provides the interface for building up a neural network. ...
std::unique_ptr< ITfLiteParser, void(*)(ITfLiteParser *parser)> ITfLiteParserPtr
void CompareAndPrintResult(std::vector< const void *> otherOutput) override
Compare the output with the result of another IExecutor.
Holds all parameters necessary to execute a network Check ExecuteNetworkProgramOptions.cpp for a description of each parameter.
std::vector< std::pair< LayerBindingId, class Tensor > > OutputTensors
std::unique_ptr< IOptimizedNetwork, void(*)(IOptimizedNetwork *network)> IOptimizedNetworkPtr
std::unique_ptr< IDeserializer, void(*)(IDeserializer *parser)> IDeserializerPtr
void PrintNetworkInfo() override
Print available information about the network.
std::pair< armnn::LayerBindingId, armnn::TensorInfo > BindingPointInfo
IExecutor executes a network.
std::vector< const void *> Execute() override
Execute the given network.
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
std::unique_ptr< IOnnxParser, void(*)(IOnnxParser *parser)> IOnnxParserPtr
ArmNNExecutor(const ExecuteNetworkParams ¶ms, armnn::IRuntime::CreationOptions runtimeOptions)