diff options
author | Jim Flynn <jim.flynn@arm.com> | 2019-05-01 14:44:27 +0100 |
---|---|---|
committer | Jim Flynn Arm <jim.flynn@arm.com> | 2019-05-02 10:23:48 +0000 |
commit | b4d7eaef418bfda0b939c757b6206570f70aff8e (patch) | |
tree | ebe8decb6df6091028d21336d221eb599ab9a503 | |
parent | 93e2e40500b2e0b7a47f3214a9b0499da50476b0 (diff) | |
download | armnn-b4d7eaef418bfda0b939c757b6206570f70aff8e.tar.gz |
IVGCVSW-3039 Unify BindingPointInfo declarations
Change-Id: I3deb2b9a37e8a8f8f2ed93c64ed0656ae911e24c
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
-rw-r--r-- | include/armnn/Tensor.hpp | 2 | ||||
-rw-r--r-- | include/armnnCaffeParser/ICaffeParser.hpp | 2 | ||||
-rw-r--r-- | include/armnnOnnxParser/IOnnxParser.hpp | 2 | ||||
-rw-r--r-- | include/armnnTfLiteParser/ITfLiteParser.hpp | 3 | ||||
-rw-r--r-- | include/armnnTfParser/ITfParser.hpp | 2 | ||||
-rw-r--r-- | src/armnnCaffeParser/CaffeParser.hpp | 2 | ||||
-rw-r--r-- | src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp | 11 | ||||
-rw-r--r-- | src/armnnOnnxParser/OnnxParser.hpp | 1 | ||||
-rw-r--r-- | src/armnnTfLiteParser/test/ParserFlatbuffersFixture.hpp | 12 | ||||
-rw-r--r-- | src/armnnTfParser/TfParser.hpp | 2 | ||||
-rw-r--r-- | src/armnnUtils/ParserPrototxtFixture.hpp | 8 | ||||
-rw-r--r-- | tests/InferenceModel.hpp | 44 | ||||
-rw-r--r-- | tests/MultipleNetworksCifar10/MultipleNetworksCifar10.cpp | 5 |
13 files changed, 40 insertions, 56 deletions
diff --git a/include/armnn/Tensor.hpp b/include/armnn/Tensor.hpp index 160ccca79c..3cde1ad9ab 100644 --- a/include/armnn/Tensor.hpp +++ b/include/armnn/Tensor.hpp @@ -101,6 +101,8 @@ private: } m_Quantization; }; +using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; + template<typename MemoryType> class BaseTensor { diff --git a/include/armnnCaffeParser/ICaffeParser.hpp b/include/armnnCaffeParser/ICaffeParser.hpp index 9d885f5e1f..62a7b8cd69 100644 --- a/include/armnnCaffeParser/ICaffeParser.hpp +++ b/include/armnnCaffeParser/ICaffeParser.hpp @@ -16,7 +16,7 @@ namespace armnnCaffeParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; +using BindingPointInfo = armnn::BindingPointInfo; class ICaffeParser; using ICaffeParserPtr = std::unique_ptr<ICaffeParser, void(*)(ICaffeParser* parser)>; diff --git a/include/armnnOnnxParser/IOnnxParser.hpp b/include/armnnOnnxParser/IOnnxParser.hpp index 40b47a597b..d6b9399dd5 100644 --- a/include/armnnOnnxParser/IOnnxParser.hpp +++ b/include/armnnOnnxParser/IOnnxParser.hpp @@ -14,7 +14,7 @@ namespace armnnOnnxParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; +using BindingPointInfo = armnn::BindingPointInfo; class IOnnxParser; using IOnnxParserPtr = std::unique_ptr<IOnnxParser, void(*)(IOnnxParser* parser)>; diff --git a/include/armnnTfLiteParser/ITfLiteParser.hpp b/include/armnnTfLiteParser/ITfLiteParser.hpp index c591876c90..36b9246ee5 100644 --- a/include/armnnTfLiteParser/ITfLiteParser.hpp +++ b/include/armnnTfLiteParser/ITfLiteParser.hpp @@ -16,8 +16,7 @@ namespace armnnTfLiteParser { -// TODO: revise this: do we really need this for every parser??? -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; +using BindingPointInfo = armnn::BindingPointInfo; class ITfLiteParser; using ITfLiteParserPtr = std::unique_ptr<ITfLiteParser, void(*)(ITfLiteParser* parser)>; diff --git a/include/armnnTfParser/ITfParser.hpp b/include/armnnTfParser/ITfParser.hpp index e5bbc7ceea..ce85ec7e2f 100644 --- a/include/armnnTfParser/ITfParser.hpp +++ b/include/armnnTfParser/ITfParser.hpp @@ -16,7 +16,7 @@ namespace armnnTfParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; +using BindingPointInfo = armnn::BindingPointInfo; class ITfParser; using ITfParserPtr = std::unique_ptr<ITfParser, void(*)(ITfParser* parser)>; diff --git a/src/armnnCaffeParser/CaffeParser.hpp b/src/armnnCaffeParser/CaffeParser.hpp index 30da04e7c1..f28b3a4889 100644 --- a/src/armnnCaffeParser/CaffeParser.hpp +++ b/src/armnnCaffeParser/CaffeParser.hpp @@ -23,8 +23,6 @@ class NetParameter; namespace armnnCaffeParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - class CaffeParserBase: public ICaffeParser { public: diff --git a/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp b/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp index 038cce4da2..fef2409074 100644 --- a/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp +++ b/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp @@ -203,8 +203,6 @@ void ParserFlatbuffersSerializeFixture::RunTest( const std::map<std::string, std::vector<InputDataType>>& inputData, const std::map<std::string, std::vector<OutputDataType>>& expectedOutputData) { - using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - auto ConvertBindingInfo = [](const armnnDeserializer::BindingPointInfo& bindingInfo) { return std::make_pair(bindingInfo.m_BindingId, bindingInfo.m_TensorInfo); @@ -214,7 +212,8 @@ void ParserFlatbuffersSerializeFixture::RunTest( armnn::InputTensors inputTensors; for (auto&& it : inputData) { - BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkInputBindingInfo(layersId, it.first)); + armnn::BindingPointInfo bindingInfo = ConvertBindingInfo( + m_Parser->GetNetworkInputBindingInfo(layersId, it.first)); armnn::VerifyTensorInfoDataType(bindingInfo.second, ArmnnInputType); inputTensors.push_back({ bindingInfo.first, armnn::ConstTensor(bindingInfo.second, it.second.data()) }); } @@ -224,7 +223,8 @@ void ParserFlatbuffersSerializeFixture::RunTest( armnn::OutputTensors outputTensors; for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); + armnn::BindingPointInfo bindingInfo = ConvertBindingInfo( + m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); armnn::VerifyTensorInfoDataType(bindingInfo.second, ArmnnOutputType); outputStorage.emplace(it.first, MakeTensor<OutputDataType, NumOutputDimensions>(bindingInfo.second)); outputTensors.push_back( @@ -236,7 +236,8 @@ void ParserFlatbuffersSerializeFixture::RunTest( // Compare each output tensor to the expected values for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); + armnn::BindingPointInfo bindingInfo = ConvertBindingInfo( + m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); auto outputExpected = MakeTensor<OutputDataType, NumOutputDimensions>(bindingInfo.second, it.second); BOOST_TEST(CompareTensors(outputExpected, outputStorage[it.first])); } diff --git a/src/armnnOnnxParser/OnnxParser.hpp b/src/armnnOnnxParser/OnnxParser.hpp index ed7e54afaa..91927c24a8 100644 --- a/src/armnnOnnxParser/OnnxParser.hpp +++ b/src/armnnOnnxParser/OnnxParser.hpp @@ -19,7 +19,6 @@ class TensorInfo; namespace armnnOnnxParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; using ModelPtr = std::unique_ptr<onnx::ModelProto>; class OnnxParser : public IOnnxParser diff --git a/src/armnnTfLiteParser/test/ParserFlatbuffersFixture.hpp b/src/armnnTfLiteParser/test/ParserFlatbuffersFixture.hpp index 69c5ec1767..fdd8b82f85 100644 --- a/src/armnnTfLiteParser/test/ParserFlatbuffersFixture.hpp +++ b/src/armnnTfLiteParser/test/ParserFlatbuffersFixture.hpp @@ -255,13 +255,11 @@ void ParserFlatbuffersFixture::RunTest(size_t subgraphId, const std::map<std::string, std::vector<DataType1>>& inputData, const std::map<std::string, std::vector<DataType2>>& expectedOutputData) { - using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - // Setup the armnn input tensors from the given vectors. armnn::InputTensors inputTensors; for (auto&& it : inputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(subgraphId, it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(subgraphId, it.first); armnn::VerifyTensorInfoDataType(bindingInfo.second, armnnType1); inputTensors.push_back({ bindingInfo.first, armnn::ConstTensor(bindingInfo.second, it.second.data()) }); } @@ -293,7 +291,7 @@ void ParserFlatbuffersFixture::RunTest(size_t subgraphId, // Compare each output tensor to the expected values for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(subgraphId, it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(subgraphId, it.first); auto outputExpected = MakeTensor<DataType2, NumOutputDimensions>(bindingInfo.second, it.second); BOOST_TEST(CompareTensors(outputExpected, outputStorage[it.first])); } @@ -311,13 +309,11 @@ void ParserFlatbuffersFixture::RunTest(std::size_t subgraphId, const std::map<std::string, std::vector<DataType1>>& inputData, const std::map<std::string, std::vector<DataType2>>& expectedOutputData) { - using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - // Setup the armnn input tensors from the given vectors. armnn::InputTensors inputTensors; for (auto&& it : inputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(subgraphId, it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(subgraphId, it.first); armnn::VerifyTensorInfoDataType(bindingInfo.second, armnnType1); inputTensors.push_back({ bindingInfo.first, armnn::ConstTensor(bindingInfo.second, it.second.data()) }); @@ -328,7 +324,7 @@ void ParserFlatbuffersFixture::RunTest(std::size_t subgraphId, std::map<std::string, std::vector<DataType2>> outputStorage; for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(subgraphId, it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(subgraphId, it.first); armnn::VerifyTensorInfoDataType(bindingInfo.second, armnnType2); std::vector<DataType2> out(it.second.size()); diff --git a/src/armnnTfParser/TfParser.hpp b/src/armnnTfParser/TfParser.hpp index 95ccf397c1..8442ca0fb3 100644 --- a/src/armnnTfParser/TfParser.hpp +++ b/src/armnnTfParser/TfParser.hpp @@ -31,8 +31,6 @@ class NodeDef; namespace armnnTfParser { -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - class ParsedTfOperation; using ParsedTfOperationPtr = std::unique_ptr<ParsedTfOperation>; diff --git a/src/armnnUtils/ParserPrototxtFixture.hpp b/src/armnnUtils/ParserPrototxtFixture.hpp index 7ae0742b8e..6af989e46f 100644 --- a/src/armnnUtils/ParserPrototxtFixture.hpp +++ b/src/armnnUtils/ParserPrototxtFixture.hpp @@ -187,13 +187,11 @@ template <std::size_t NumOutputDimensions, typename T> void ParserPrototxtFixture<TParser>::RunTest(const std::map<std::string, std::vector<float>>& inputData, const std::map<std::string, std::vector<T>>& expectedOutputData) { - using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; - // Sets up the armnn input tensors from the given vectors. armnn::InputTensors inputTensors; for (auto&& it : inputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(it.first); inputTensors.push_back({ bindingInfo.first, armnn::ConstTensor(bindingInfo.second, it.second.data()) }); } @@ -202,7 +200,7 @@ void ParserPrototxtFixture<TParser>::RunTest(const std::map<std::string, std::ve armnn::OutputTensors outputTensors; for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(it.first); outputStorage.emplace(it.first, MakeTensor<T, NumOutputDimensions>(bindingInfo.second)); outputTensors.push_back( { bindingInfo.first, armnn::Tensor(bindingInfo.second, outputStorage.at(it.first).data()) }); @@ -213,7 +211,7 @@ void ParserPrototxtFixture<TParser>::RunTest(const std::map<std::string, std::ve // Compares each output tensor to the expected values. for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(it.first); + armnn::BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(it.first); if (bindingInfo.second.GetNumElements() != it.second.size()) { throw armnn::Exception( diff --git a/tests/InferenceModel.hpp b/tests/InferenceModel.hpp index fa71b3035e..d2d2ca3c8e 100644 --- a/tests/InferenceModel.hpp +++ b/tests/InferenceModel.hpp @@ -74,9 +74,7 @@ inline bool CheckRequestedBackendsAreValid(const std::vector<armnn::BackendId>& namespace InferenceModelInternal { -// This needs to go when the armnnCaffeParser, armnnTfParser and armnnTfLiteParser -// definitions of BindingPointInfo gets consolidated. -using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; +using BindingPointInfo = armnn::BindingPointInfo; using QuantizationParams = std::pair<float,int32_t>; @@ -108,11 +106,10 @@ struct CreateNetworkImpl { public: using Params = InferenceModelInternal::Params; - using BindingPointInfo = InferenceModelInternal::BindingPointInfo; static armnn::INetworkPtr Create(const Params& params, - std::vector<BindingPointInfo>& inputBindings, - std::vector<BindingPointInfo>& outputBindings) + std::vector<armnn::BindingPointInfo>& inputBindings, + std::vector<armnn::BindingPointInfo>& outputBindings) { const std::string& modelPath = params.m_ModelPath; @@ -169,11 +166,10 @@ struct CreateNetworkImpl<armnnDeserializer::IDeserializer> public: using IParser = armnnDeserializer::IDeserializer; using Params = InferenceModelInternal::Params; - using BindingPointInfo = InferenceModelInternal::BindingPointInfo; static armnn::INetworkPtr Create(const Params& params, - std::vector<BindingPointInfo>& inputBindings, - std::vector<BindingPointInfo>& outputBindings) + std::vector<armnn::BindingPointInfo>& inputBindings, + std::vector<armnn::BindingPointInfo>& outputBindings) { auto parser(IParser::Create()); BOOST_ASSERT(parser); @@ -226,11 +222,10 @@ struct CreateNetworkImpl<armnnTfLiteParser::ITfLiteParser> public: using IParser = armnnTfLiteParser::ITfLiteParser; using Params = InferenceModelInternal::Params; - using BindingPointInfo = InferenceModelInternal::BindingPointInfo; static armnn::INetworkPtr Create(const Params& params, - std::vector<BindingPointInfo>& inputBindings, - std::vector<BindingPointInfo>& outputBindings) + std::vector<armnn::BindingPointInfo>& inputBindings, + std::vector<armnn::BindingPointInfo>& outputBindings) { const std::string& modelPath = params.m_ModelPath; @@ -246,14 +241,14 @@ public: for (const std::string& inputLayerName : params.m_InputBindings) { - BindingPointInfo inputBinding = + armnn::BindingPointInfo inputBinding = parser->GetNetworkInputBindingInfo(params.m_SubgraphId, inputLayerName); inputBindings.push_back(inputBinding); } for (const std::string& outputLayerName : params.m_OutputBindings) { - BindingPointInfo outputBinding = + armnn::BindingPointInfo outputBinding = parser->GetNetworkOutputBindingInfo(params.m_SubgraphId, outputLayerName); outputBindings.push_back(outputBinding); } @@ -309,7 +304,7 @@ public: template<typename TContainer> inline armnn::InputTensors MakeInputTensors( - const std::vector<InferenceModelInternal::BindingPointInfo>& inputBindings, + const std::vector<armnn::BindingPointInfo>& inputBindings, const std::vector<TContainer>& inputDataContainers) { armnn::InputTensors inputTensors; @@ -323,7 +318,7 @@ inline armnn::InputTensors MakeInputTensors( for (size_t i = 0; i < numInputs; i++) { - const InferenceModelInternal::BindingPointInfo& inputBinding = inputBindings[i]; + const armnn::BindingPointInfo& inputBinding = inputBindings[i]; const TContainer& inputData = inputDataContainers[i]; boost::apply_visitor([&](auto&& value) @@ -344,7 +339,7 @@ inline armnn::InputTensors MakeInputTensors( template<typename TContainer> inline armnn::OutputTensors MakeOutputTensors( - const std::vector<InferenceModelInternal::BindingPointInfo>& outputBindings, + const std::vector<armnn::BindingPointInfo>& outputBindings, std::vector<TContainer>& outputDataContainers) { armnn::OutputTensors outputTensors; @@ -358,7 +353,7 @@ inline armnn::OutputTensors MakeOutputTensors( for (size_t i = 0; i < numOutputs; i++) { - const InferenceModelInternal::BindingPointInfo& outputBinding = outputBindings[i]; + const armnn::BindingPointInfo& outputBinding = outputBindings[i]; TContainer& outputData = outputDataContainers[i]; boost::apply_visitor([&](auto&& value) @@ -383,7 +378,6 @@ class InferenceModel public: using DataType = TDataType; using Params = InferenceModelInternal::Params; - using BindingPointInfo = InferenceModelInternal::BindingPointInfo; using QuantizationParams = InferenceModelInternal::QuantizationParams; using TContainer = boost::variant<std::vector<float>, std::vector<int>, std::vector<unsigned char>>; @@ -564,24 +558,24 @@ public: } } - const BindingPointInfo& GetInputBindingInfo(unsigned int inputIndex = 0u) const + const armnn::BindingPointInfo& GetInputBindingInfo(unsigned int inputIndex = 0u) const { CheckInputIndexIsValid(inputIndex); return m_InputBindings[inputIndex]; } - const std::vector<BindingPointInfo>& GetInputBindingInfos() const + const std::vector<armnn::BindingPointInfo>& GetInputBindingInfos() const { return m_InputBindings; } - const BindingPointInfo& GetOutputBindingInfo(unsigned int outputIndex = 0u) const + const armnn::BindingPointInfo& GetOutputBindingInfo(unsigned int outputIndex = 0u) const { CheckOutputIndexIsValid(outputIndex); return m_OutputBindings[outputIndex]; } - const std::vector<BindingPointInfo>& GetOutputBindingInfos() const + const std::vector<armnn::BindingPointInfo>& GetOutputBindingInfos() const { return m_OutputBindings; } @@ -614,8 +608,8 @@ private: armnn::NetworkId m_NetworkIdentifier; std::shared_ptr<armnn::IRuntime> m_Runtime; - std::vector<InferenceModelInternal::BindingPointInfo> m_InputBindings; - std::vector<InferenceModelInternal::BindingPointInfo> m_OutputBindings; + std::vector<armnn::BindingPointInfo> m_InputBindings; + std::vector<armnn::BindingPointInfo> m_OutputBindings; bool m_EnableProfiling; template<typename TContainer> diff --git a/tests/MultipleNetworksCifar10/MultipleNetworksCifar10.cpp b/tests/MultipleNetworksCifar10/MultipleNetworksCifar10.cpp index 2bbfb69c8d..006318f73a 100644 --- a/tests/MultipleNetworksCifar10/MultipleNetworksCifar10.cpp +++ b/tests/MultipleNetworksCifar10/MultipleNetworksCifar10.cpp @@ -186,9 +186,8 @@ int main(int argc, char* argv[]) for (unsigned int k = 0; k < networksCount; ++k) { - using BindingPointInfo = InferenceModelInternal::BindingPointInfo; - std::vector<BindingPointInfo> inputBindings = { networks[k].m_InputBindingInfo }; - std::vector<BindingPointInfo> outputBindings = { networks[k].m_OutputBindingInfo }; + std::vector<armnn::BindingPointInfo> inputBindings = { networks[k].m_InputBindingInfo }; + std::vector<armnn::BindingPointInfo> outputBindings = { networks[k].m_OutputBindingInfo }; std::vector<TContainer> inputDataContainers = { testCaseData->m_InputImage }; std::vector<TContainer> outputDataContainers = { outputs[k] }; |