diff options
author | David Monahan <david.monahan@arm.com> | 2023-07-25 12:08:10 +0100 |
---|---|---|
committer | David Monahan <david.monahan@arm.com> | 2023-07-25 11:49:01 +0000 |
commit | 616b22f52b169db10992fd70f4584365fd3db463 (patch) | |
tree | 5f4e4550848ac7c4800e6137466b3970c68565f4 /src/armnnSerializer/test | |
parent | 79a06a59bafadf736ca53c4240e87f9bbb657260 (diff) | |
download | armnn-616b22f52b169db10992fd70f4584365fd3db463.tar.gz |
IVGCVSW-7884 - Add Tile to Serializer and Deserializer
* Added parsing functions to the serializer and deserializer
* Added Tile and its Descriptor to the ArmnnSchema.fbs
* Added a Unittest
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I72e638d26038c9b118cd82f633af462fd19e2b34
Diffstat (limited to 'src/armnnSerializer/test')
-rw-r--r-- | src/armnnSerializer/test/SerializerTests.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/armnnSerializer/test/SerializerTests.cpp b/src/armnnSerializer/test/SerializerTests.cpp index 163e5c8374..b2590eaa42 100644 --- a/src/armnnSerializer/test/SerializerTests.cpp +++ b/src/armnnSerializer/test/SerializerTests.cpp @@ -3038,5 +3038,30 @@ TEST_CASE("SerializeOverriddenSlot") deserializedNetwork->ExecuteStrategy(verifier); } +TEST_CASE("SerializeTile") +{ + const std::string layerName("Tile"); + const armnn::TensorInfo inputInfo = armnn::TensorInfo({ 2, 3 }, armnn::DataType::Float32); + const armnn::TensorInfo outputInfo = armnn::TensorInfo({ 4, 6 }, armnn::DataType::Float32); + + armnn::TileDescriptor desc = armnn::TileDescriptor(std::vector<uint32_t>{ 2, 2 }); + + armnn::INetworkPtr network = armnn::INetwork::Create(); + armnn::IConnectableLayer* const inputLayer = network->AddInputLayer(0); + armnn::IConnectableLayer* const tileLayer = network->AddTileLayer(desc, layerName.c_str()); + armnn::IConnectableLayer* const outputLayer = network->AddOutputLayer(0); + + inputLayer->GetOutputSlot(0).Connect(tileLayer->GetInputSlot(0)); + tileLayer->GetOutputSlot(0).Connect(outputLayer->GetInputSlot(0)); + + inputLayer->GetOutputSlot(0).SetTensorInfo(inputInfo); + tileLayer->GetOutputSlot(0).SetTensorInfo(outputInfo); + + armnn::INetworkPtr deserializedNetwork = DeserializeNetwork(SerializeNetwork(*network)); + CHECK(deserializedNetwork); + + LayerVerifierBaseWithDescriptor<armnn::TileDescriptor> verifier(layerName, {inputInfo}, {outputInfo}, desc); + deserializedNetwork->ExecuteStrategy(verifier); +} } |