aboutsummaryrefslogtreecommitdiff
path: root/src/armnnSerializer/Serializer.cpp
diff options
context:
space:
mode:
authorSimon Obute <simon.obute@arm.com>2021-09-03 15:50:13 +0100
committerTeresa Charlin <teresa.charlinreyes@arm.com>2021-09-24 16:06:30 +0100
commit51f67776a695c217a32596af806afeeb080f5528 (patch)
tree33ccfd87ba365bcc6fc86d5a2181991a130b3061 /src/armnnSerializer/Serializer.cpp
parentf10b15a8946f39bdf3f60cebc59d2963069eedca (diff)
downloadarmnn-51f67776a695c217a32596af806afeeb080f5528.tar.gz
IVGCVSW-3705 Add Channel Shuffle Front end and Ref Implementation
* Add front end * Add reference workload * Add unit tests * Add Serializer and Deserializer * Update ArmNN Versioning Signed-off-by: Simon Obute <simon.obute@arm.com> Change-Id: I9ac1f953af3974382eac8e8d62d794d2344e8f47
Diffstat (limited to 'src/armnnSerializer/Serializer.cpp')
-rw-r--r--src/armnnSerializer/Serializer.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp
index 195b41657a..9a3a270de5 100644
--- a/src/armnnSerializer/Serializer.cpp
+++ b/src/armnnSerializer/Serializer.cpp
@@ -302,6 +302,19 @@ void SerializerStrategy::SerializeCastLayer(const armnn::IConnectableLayer* laye
CreateAnyLayer(fbCastLayer.o, serializer::Layer::Layer_CastLayer);
}
+void SerializerStrategy::SerializeChannelShuffleLayer(const armnn::IConnectableLayer* layer,
+ const armnn::ChannelShuffleDescriptor& descriptor,
+ const char* name)
+{
+ IgnoreUnused(name);
+ auto fbDescriptor = CreateChannelShuffleDescriptor(m_flatBufferBuilder,
+ descriptor.m_Axis,
+ descriptor.m_NumGroups);
+ auto fbBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_ChannelShuffle);
+ auto fbChannelShuffleLayer = serializer::CreateChannelShuffleLayer(m_flatBufferBuilder, fbBaseLayer, fbDescriptor);
+ CreateAnyLayer(fbChannelShuffleLayer.o, serializer::Layer::Layer_ChannelShuffleLayer);
+}
+
void SerializerStrategy::SerializeComparisonLayer(const armnn::IConnectableLayer* layer,
const armnn::ComparisonDescriptor& descriptor,
const char* name)
@@ -1997,6 +2010,15 @@ void SerializerStrategy::ExecuteStrategy(const armnn::IConnectableLayer* layer,
SerializeCastLayer(layer, name);
break;
}
+ case armnn::LayerType::ChannelShuffle :
+ {
+ const armnn::ChannelShuffleDescriptor& layerDescriptor =
+ static_cast<const armnn::ChannelShuffleDescriptor&>(descriptor);
+ SerializeChannelShuffleLayer(layer,
+ layerDescriptor,
+ name);
+ break;
+ }
case armnn::LayerType::Comparison :
{
const armnn::ComparisonDescriptor& layerDescriptor =