aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/WorkloadFactory.cpp
diff options
context:
space:
mode:
authorKevin May <kevin.may@arm.com>2019-09-04 17:29:31 +0100
committerSadik Armagan <sadik.armagan@arm.com>2019-09-05 10:48:35 +0000
commit868eb14c463ee76668ad75d4cd4e718a840f7be6 (patch)
treea2eac7dd52811c2af188cc00c271d156afee008b /src/backends/backendsCommon/WorkloadFactory.cpp
parent3a161988ebb9e5406d2bcab6fc3a06f8545eb588 (diff)
downloadarmnn-868eb14c463ee76668ad75d4cd4e718a840f7be6.tar.gz
IVGCVSW-3739 Add Arm NN front end support for Abs Layer
* Add Abs Layer * Add no-op factory implementations for CpuRef, CpuAcc, GpuAcc * Add Queue Descriptor in WorkloadData * Add IsAbsLayerSupported to LayerSupport * Add LayerVisitor tests Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ib0992571d1c80de851cea466291be904e9bdb430
Diffstat (limited to 'src/backends/backendsCommon/WorkloadFactory.cpp')
-rw-r--r--src/backends/backendsCommon/WorkloadFactory.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/backends/backendsCommon/WorkloadFactory.cpp b/src/backends/backendsCommon/WorkloadFactory.cpp
index ffef5b4eb7..9d081af8e9 100644
--- a/src/backends/backendsCommon/WorkloadFactory.cpp
+++ b/src/backends/backendsCommon/WorkloadFactory.cpp
@@ -69,6 +69,15 @@ bool IWorkloadFactory::IsLayerSupported(const BackendId& backendId,
switch(layer.GetType())
{
+ case LayerType::Abs:
+ {
+ const TensorInfo& input = layer.GetInputSlot(0).GetConnection()->GetTensorInfo();
+ const TensorInfo& output = layer.GetOutputSlot(0).GetTensorInfo();
+ result = layerSupportObject->IsAbsSupported(OverrideDataType(input, dataType),
+ OverrideDataType(output, dataType),
+ reason);
+ break;
+ }
case LayerType::Activation:
{
auto cLayer = boost::polymorphic_downcast<const ActivationLayer*>(&layer);
@@ -952,6 +961,12 @@ bool IWorkloadFactory::IsLayerSupported(const IConnectableLayer& connectableLaye
}
// Default Implementations
+std::unique_ptr<IWorkload> IWorkloadFactory::CreateAbs(const AbsQueueDescriptor& descriptor,
+ const WorkloadInfo& info) const
+{
+ return std::unique_ptr<IWorkload>();
+}
+
std::unique_ptr<IWorkload> IWorkloadFactory::CreateActivation(const ActivationQueueDescriptor& descriptor,
const WorkloadInfo& info) const
{