aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon
diff options
context:
space:
mode:
authorSadik Armagan <sadik.armagan@arm.com>2021-03-31 16:12:13 +0100
committerSadik Armagan <sadik.armagan@arm.com>2021-04-02 10:38:51 +0000
commitaede8ca25d3231d122b670353b754142b64e5d69 (patch)
tree87ba5bdae701a51b15fa44d550a55932e89966c9 /src/backends/neon
parent8c7a28ba48a0c7347fd6f940cbcf4b6dbeca932f (diff)
downloadarmnn-aede8ca25d3231d122b670353b754142b64e5d69.tar.gz
IVGCVSW-5783 'Add AsyncExecution Capability'
* Added AsyncExecution to the BackendCapability enum class. * Logged a warning if backends do not support AsyncExecution capability if AsyncNetwork is created. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I49f8467297f4b6b8e414cb6a3638a7d3f1bb886a
Diffstat (limited to 'src/backends/neon')
-rw-r--r--src/backends/neon/NeonBackend.cpp10
-rw-r--r--src/backends/neon/NeonBackend.hpp6
2 files changed, 16 insertions, 0 deletions
diff --git a/src/backends/neon/NeonBackend.cpp b/src/backends/neon/NeonBackend.cpp
index d48b32bb45..a1299fb458 100644
--- a/src/backends/neon/NeonBackend.cpp
+++ b/src/backends/neon/NeonBackend.cpp
@@ -131,6 +131,16 @@ IBackendInternal::ILayerSupportSharedPtr NeonBackend::GetLayerSupport(const Mode
return layerSupport;
}
+bool NeonBackend::HasCapability(BackendCapability capabilityClass) const
+{
+ auto search = cpuAccCapabilities.find(capabilityClass);
+ if (search != cpuAccCapabilities.end())
+ {
+ return true;
+ }
+ return false;
+}
+
OptimizationViews NeonBackend::OptimizeSubgraphView(const SubgraphView& subgraph) const
{
OptimizationViews optimizationViews;
diff --git a/src/backends/neon/NeonBackend.hpp b/src/backends/neon/NeonBackend.hpp
index 42c6666930..34606f992c 100644
--- a/src/backends/neon/NeonBackend.hpp
+++ b/src/backends/neon/NeonBackend.hpp
@@ -9,6 +9,10 @@
namespace armnn
{
+const std::set<armnn::BackendCapability> cpuAccCapabilities {
+ // add new capabilities here..
+};
+
class NeonBackend : public IBackendInternal
{
public:
@@ -47,6 +51,8 @@ public:
IBackendInternal::IBackendSpecificModelContextPtr CreateBackendSpecificModelContext(
const ModelOptions& modelOptions) const override;
+
+ bool HasCapability(BackendCapability capabilityClass) const override;
};
} // namespace armnn