ArmNN
 21.05
ExecuteNetworkParams.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include <armnn/BackendId.hpp>
9 #include <armnn/Tensor.hpp>
10 
11 /// Holds all parameters necessary to execute a network
12 /// Check ExecuteNetworkProgramOptions.cpp for a description of each parameter
14 {
15  using TensorShapePtr = std::unique_ptr<armnn::TensorShape>;
16 
17  enum class TfLiteExecutor
18  {
22  };
23 
25  std::vector<armnn::BackendId> m_ComputeDevices;
28  std::string m_DynamicBackendsPath;
30  bool m_EnableFastMath = false;
32  bool m_EnableLayerDetails = false;
35  bool m_InferOutputShape = false;
36  bool m_EnableDelegate = false;
37  std::vector<std::string> m_InputNames;
38  std::vector<std::string> m_InputTensorDataFilePaths;
39  std::vector<TensorShapePtr> m_InputTensorShapes;
40  std::vector<std::string> m_InputTypes;
42  size_t m_Iterations;
43  std::string m_ModelFormat;
44  std::string m_ModelPath;
45  unsigned int m_NumberOfThreads;
46  std::vector<std::string> m_OutputNames;
47  std::vector<std::string> m_OutputTensorFiles;
48  std::vector<std::string> m_OutputTypes;
49  bool m_ParseUnsupported = false;
54  size_t m_SubgraphId;
57  std::string m_TuningPath;
58  std::string m_MLGOTuningFilePath;
60 
61  // Ensures that the parameters for ExecuteNetwork fit together
62  void ValidateParams();
63 };
std::vector< std::string > m_InputTypes
std::unique_ptr< armnn::TensorShape > TensorShapePtr
std::vector< TensorShapePtr > m_InputTensorShapes
std::vector< std::string > m_OutputNames
std::vector< std::string > m_OutputTensorFiles
std::vector< armnn::BackendId > m_ComputeDevices
std::vector< std::string > m_OutputTypes
Holds all parameters necessary to execute a network Check ExecuteNetworkProgramOptions.cpp for a description of each parameter.
std::vector< std::string > m_InputNames
std::vector< std::string > m_InputTensorDataFilePaths