aboutsummaryrefslogtreecommitdiff
path: root/src/armnnTfParser/TfParser.cpp
diff options
context:
space:
mode:
authorMohamed Nour Abouelseoud <mohamednour.abouelseoud@arm.com>2019-01-09 14:19:58 +0000
committerMohamed Nour Abouelseoud <mohamednour.abouelseoud@arm.com>2019-01-09 16:05:21 +0000
commit7a8892fe7c208cce76017acbabdd137c872ddadc (patch)
tree24e10ce244973ce345ff7bd5d78a522c8c1f067f /src/armnnTfParser/TfParser.cpp
parent9292aa3c71301a8989caaed6c9ad18e2190a8baa (diff)
downloadarmnn-7a8892fe7c208cce76017acbabdd137c872ddadc.tar.gz
IVGCVSW-2345 Add Rsqrt support in Tensorflow Parser
Change-Id: I7c7b65bd77b06925efdaf2c9c98c30994a12de42
Diffstat (limited to 'src/armnnTfParser/TfParser.cpp')
-rwxr-xr-xsrc/armnnTfParser/TfParser.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/armnnTfParser/TfParser.cpp b/src/armnnTfParser/TfParser.cpp
index 3d0c72da4c..90bd992a2b 100755
--- a/src/armnnTfParser/TfParser.cpp
+++ b/src/armnnTfParser/TfParser.cpp
@@ -345,6 +345,7 @@ const std::map<std::string, TfParser::OperationParsingFunction> TfParser::ms_Ope
{ "Relu6", &TfParser::ParseRelu6 },
{ "Reshape", &TfParser::ParseReshape },
{ "ResizeBilinear", &TfParser::ParseResizeBilinear },
+ { "Rsqrt", &TfParser::ParseRsqrt },
{ "Shape", &TfParser::ParseShape },
{ "Squeeze", &TfParser::ParseSqueeze },
{ "Sigmoid", &TfParser::ParseSigmoid },
@@ -2445,6 +2446,22 @@ ParsedTfOperationPtr TfParser::ParseSigmoid(const tensorflow::NodeDef& nodeDef,
return AddActivationLayer(nodeDef, activationDesc);
}
+ParsedTfOperationPtr TfParser::ParseRsqrt(const tensorflow::NodeDef &nodeDef,
+ const tensorflow::GraphDef &graphDef)
+{
+ boost::ignore_unused(graphDef);
+
+ std::vector<OutputOfParsedTfOperation> inputs = GetInputParsedTfOperationsChecked(nodeDef, 1);
+
+ IConnectableLayer* const layer = m_Network->AddRsqrtLayer(nodeDef.name().c_str());
+
+ IOutputSlot& prevLayerOutputSlot = inputs[0].m_IndexedValue->ResolveArmnnOutputSlot(inputs[0].m_Index);
+ prevLayerOutputSlot.Connect(layer->GetInputSlot(0));
+ layer->GetOutputSlot(0).SetTensorInfo(prevLayerOutputSlot.GetTensorInfo());
+
+ return std::make_unique<SingleLayerParsedTfOperation>(this, nodeDef, layer);
+}
+
ParsedTfOperationPtr TfParser::ParseSoftmax(const tensorflow::NodeDef& nodeDef,
const tensorflow::GraphDef& graphDef)
{