aboutsummaryrefslogtreecommitdiff
path: root/src/backends
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends')
-rw-r--r--src/backends/backendsCommon/IBackendInternal.hpp35
-rw-r--r--src/backends/cl/ClBackend.cpp10
-rw-r--r--src/backends/cl/ClBackend.hpp3
-rw-r--r--src/backends/neon/NeonBackend.cpp10
-rw-r--r--src/backends/neon/NeonBackend.hpp3
-rw-r--r--src/backends/reference/RefBackend.cpp10
-rw-r--r--src/backends/reference/RefBackend.hpp3
7 files changed, 42 insertions, 32 deletions
diff --git a/src/backends/backendsCommon/IBackendInternal.hpp b/src/backends/backendsCommon/IBackendInternal.hpp
index 72214b891e..fe9d620278 100644
--- a/src/backends/backendsCommon/IBackendInternal.hpp
+++ b/src/backends/backendsCommon/IBackendInternal.hpp
@@ -47,33 +47,46 @@ public:
using GraphUniquePtr = std::unique_ptr<Graph>;
using SubgraphViewUniquePtr = std::unique_ptr<SubgraphView>;
- virtual IMemoryManagerUniquePtr CreateMemoryManager() const = 0;
-
- virtual IWorkloadFactoryPtr CreateWorkloadFactory(
- const IMemoryManagerSharedPtr& memoryManager = nullptr) const = 0;
-
- virtual IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const = 0;
-
- virtual ILayerSupportSharedPtr GetLayerSupport() const = 0;
+ ARMNN_NO_DEPRECATE_WARN_BEGIN
+ using ISubGraphConverterPtr ARMNN_DEPRECATED_MSG("This type is no longer supported")
+ = std::unique_ptr<ISubGraphConverter>;
+ using SubGraphUniquePtr ARMNN_DEPRECATED_MSG("SubGraph is deprecated, use SubgraphView instead")
+ = std::unique_ptr<SubGraph>;
+
+ ARMNN_DEPRECATED_MSG("This method is no longer supported")
+ virtual ISubGraphConverterPtr CreateSubGraphConverter(const std::shared_ptr<SubGraph>& subGraph) const
+ {
+ return ISubGraphConverterPtr{};
+ }
ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
virtual Optimizations GetOptimizations() const = 0;
ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
- virtual SubgraphViewUniquePtr OptimizeSubgraphView(const SubgraphView& subgraph, bool& optimizationAttempted) const
+ virtual SubGraphUniquePtr OptimizeSubGraph(const SubGraph& subGraph, bool& optimizationAttempted) const
{
optimizationAttempted = false;
return nullptr;
}
+ ARMNN_NO_DEPRECATE_WARN_END
+
+ virtual IMemoryManagerUniquePtr CreateMemoryManager() const = 0;
+
+ virtual IWorkloadFactoryPtr CreateWorkloadFactory(
+ const IMemoryManagerSharedPtr& memoryManager = nullptr) const = 0;
+
+ virtual IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const = 0;
+
+ virtual ILayerSupportSharedPtr GetLayerSupport() const = 0;
- // Default implementation of OptimizeSubgraphView for backward compatibility with old API.
+ // Default implementation of OptimizeSubgraphView for backward compatibility with the old API.
// Override this method with a custom optimization implementation.
virtual OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const
{
bool optimizationAttempted = false;
ARMNN_NO_DEPRECATE_WARN_BEGIN
- SubgraphViewUniquePtr optSubgraph = OptimizeSubgraphView(subgraph, optimizationAttempted);
+ SubGraphUniquePtr optSubgraph = OptimizeSubGraph(subgraph, optimizationAttempted);
ARMNN_NO_DEPRECATE_WARN_END
OptimizationViews result;
diff --git a/src/backends/cl/ClBackend.cpp b/src/backends/cl/ClBackend.cpp
index 5d87d27381..332ae1e679 100644
--- a/src/backends/cl/ClBackend.cpp
+++ b/src/backends/cl/ClBackend.cpp
@@ -74,13 +74,13 @@ IBackendInternal::ILayerSupportSharedPtr ClBackend::GetLayerSupport() const
return layerSupport;
}
-IBackendInternal::SubgraphViewUniquePtr ClBackend::OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const
+OptimizationViews ClBackend::OptimizeSubgraphView(const SubgraphView& subgraph) const
{
- // Not trying to optimize the given sub-graph
- optimizationAttempted = false;
+ OptimizationViews optimizationViews;
- return SubgraphViewUniquePtr{};
+ optimizationViews.AddUntouchedSubgraph(SubgraphView(subgraph));
+
+ return optimizationViews;
}
} // namespace armnn
diff --git a/src/backends/cl/ClBackend.hpp b/src/backends/cl/ClBackend.hpp
index 171c7d5737..12e8d8ef5a 100644
--- a/src/backends/cl/ClBackend.hpp
+++ b/src/backends/cl/ClBackend.hpp
@@ -28,8 +28,7 @@ public:
IBackendInternal::Optimizations GetOptimizations() const override;
IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override;
- IBackendInternal::SubgraphViewUniquePtr OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const override;
+ OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const override;
};
} // namespace armnn
diff --git a/src/backends/neon/NeonBackend.cpp b/src/backends/neon/NeonBackend.cpp
index 8defac1e60..d7be844c21 100644
--- a/src/backends/neon/NeonBackend.cpp
+++ b/src/backends/neon/NeonBackend.cpp
@@ -74,13 +74,13 @@ IBackendInternal::ILayerSupportSharedPtr NeonBackend::GetLayerSupport() const
return layerSupport;
}
-IBackendInternal::SubgraphViewUniquePtr NeonBackend::OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const
+OptimizationViews NeonBackend::OptimizeSubgraphView(const SubgraphView& subgraph) const
{
- // Not trying to optimize the given sub-graph
- optimizationAttempted = false;
+ OptimizationViews optimizationViews;
- return SubgraphViewUniquePtr{};
+ optimizationViews.AddUntouchedSubgraph(SubgraphView(subgraph));
+
+ return optimizationViews;
}
} // namespace armnn
diff --git a/src/backends/neon/NeonBackend.hpp b/src/backends/neon/NeonBackend.hpp
index 0d03c2565e..398337f775 100644
--- a/src/backends/neon/NeonBackend.hpp
+++ b/src/backends/neon/NeonBackend.hpp
@@ -28,8 +28,7 @@ public:
IBackendInternal::Optimizations GetOptimizations() const override;
IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override;
- IBackendInternal::SubgraphViewUniquePtr OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const override;
+ OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const override;
};
} // namespace armnn
diff --git a/src/backends/reference/RefBackend.cpp b/src/backends/reference/RefBackend.cpp
index d7de161dec..0a296be016 100644
--- a/src/backends/reference/RefBackend.cpp
+++ b/src/backends/reference/RefBackend.cpp
@@ -67,13 +67,13 @@ IBackendInternal::ILayerSupportSharedPtr RefBackend::GetLayerSupport() const
return layerSupport;
}
-IBackendInternal::SubgraphViewUniquePtr RefBackend::OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const
+OptimizationViews RefBackend::OptimizeSubgraphView(const SubgraphView& subgraph) const
{
- // Not trying to optimize the given sub-graph
- optimizationAttempted = false;
+ OptimizationViews optimizationViews;
- return SubgraphViewUniquePtr{};
+ optimizationViews.AddUntouchedSubgraph(SubgraphView(subgraph));
+
+ return optimizationViews;
}
} // namespace armnn
diff --git a/src/backends/reference/RefBackend.hpp b/src/backends/reference/RefBackend.hpp
index af756e8dab..06179bd939 100644
--- a/src/backends/reference/RefBackend.hpp
+++ b/src/backends/reference/RefBackend.hpp
@@ -28,8 +28,7 @@ public:
IBackendInternal::Optimizations GetOptimizations() const override;
IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override;
- IBackendInternal::SubgraphViewUniquePtr OptimizeSubgraphView(const SubgraphView& subgraph,
- bool& optimizationAttempted) const override;
+ OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const override;
};
} // namespace armnn