aboutsummaryrefslogtreecommitdiff
path: root/delegate/opaque
diff options
context:
space:
mode:
authorTeresa Charlin <teresa.charlinreyes@arm.com>2023-09-15 15:19:21 +0100
committerTeresaARM <teresa.charlinreyes@arm.com>2023-09-29 11:05:29 +0000
commit077cddbe9e956c6740557a9add499385f235c384 (patch)
treeae1816443bf4f85c7968aa3e542ef2b5e5400e7e /delegate/opaque
parent9a45e8fab86f7078d22360794058f5550413df78 (diff)
downloadarmnn-077cddbe9e956c6740557a9add499385f235c384.tar.gz
IVGCVSW-8055 Add support for GELU activation function.
* Add support to CpuRef, CpuAcc and GpuAcc * Add support to tflite parser, classic and opaque tflite delegates * Add support to serializer and deserializer * Add Unit tests Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ibc60ef2ef2a051e6d9af6e15d24c46316ec19de4
Diffstat (limited to 'delegate/opaque')
-rw-r--r--delegate/opaque/src/Activation.hpp8
-rw-r--r--delegate/opaque/src/armnn_delegate.cpp6
2 files changed, 14 insertions, 0 deletions
diff --git a/delegate/opaque/src/Activation.hpp b/delegate/opaque/src/Activation.hpp
index dd9c2f68bc..ad242e5799 100644
--- a/delegate/opaque/src/Activation.hpp
+++ b/delegate/opaque/src/Activation.hpp
@@ -24,6 +24,9 @@ std::string GetLayerName(armnn::ActivationFunction activationFunction)
case armnn::ActivationFunction::Elu:
layerName += " ELU";
break;
+ case armnn::ActivationFunction::Gelu:
+ layerName += " GELU";
+ break;
case armnn::ActivationFunction::HardSwish:
layerName += " HARD_SWISH";
break;
@@ -175,6 +178,11 @@ TfLiteStatus VisitActivationOperator(DelegateData& delegateData,
activationDesc.m_A = leakyReluParameters->alpha;
break;
}
+ case kTfLiteBuiltinGelu:
+ {
+ activationDesc.m_Function = armnn::ActivationFunction::Gelu;
+ break;
+ }
default:
{
return kTfLiteError;
diff --git a/delegate/opaque/src/armnn_delegate.cpp b/delegate/opaque/src/armnn_delegate.cpp
index 08b1504efb..6abf7398cc 100644
--- a/delegate/opaque/src/armnn_delegate.cpp
+++ b/delegate/opaque/src/armnn_delegate.cpp
@@ -808,6 +808,12 @@ TfLiteStatus ArmnnSubgraph::VisitNode(DelegateData& delegateData,
tfLiteNode,
nodeIndex,
kTfLiteBuiltinGatherNd);
+ case kTfLiteBuiltinGelu:
+ return VisitActivationOperator(delegateData,
+ tfLiteContext,
+ tfLiteNode,
+ nodeIndex,
+ kTfLiteBuiltinGelu);
case kTfLiteBuiltinGreater:
return VisitComparisonOperator(delegateData,
tfLiteContext,