From 1aff393b359b518925f66901439466f9bc14c49d Mon Sep 17 00:00:00 2001 From: Colm Donelan Date: Wed, 5 Feb 2020 17:48:59 +0000 Subject: IVGCVSW-4317 Implement the Profiling Context Initialisation * Call CreateBackendProfilingContext on each backend from Runtime passing an instance of the BackendProfiling interface. * Modify the signature of CreateBackendProfilingContext to remove const and return a shared_ptr to BackendProfilingContext * Add concrete BackendProfiling class. * Store BackendProfilingContexts in Profiling service. Signed-off-by: Colm Donelan Change-Id: I975eaa2093ae91fa623835f65f9e5b25eb65117a --- src/backends/backendsCommon/IBackendInternal.cpp | 2 +- src/backends/backendsCommon/test/MockBackend.cpp | 2 +- src/backends/backendsCommon/test/MockBackend.hpp | 25 ++++++++++++++---------- 3 files changed, 17 insertions(+), 12 deletions(-) (limited to 'src/backends/backendsCommon') diff --git a/src/backends/backendsCommon/IBackendInternal.cpp b/src/backends/backendsCommon/IBackendInternal.cpp index c86d026e96..a9d5a5493d 100644 --- a/src/backends/backendsCommon/IBackendInternal.cpp +++ b/src/backends/backendsCommon/IBackendInternal.cpp @@ -45,7 +45,7 @@ IBackendInternal::IBackendContextPtr IBackendInternal::CreateBackendContext(cons } IBackendInternal::IBackendProfilingContextPtr IBackendInternal::CreateBackendProfilingContext( - const IRuntime::CreationOptions&, armnn::profiling::IBackendProfiling&) const + const IRuntime::CreationOptions&, IBackendProfilingPtr&) { return IBackendProfilingContextPtr{}; } diff --git a/src/backends/backendsCommon/test/MockBackend.cpp b/src/backends/backendsCommon/test/MockBackend.cpp index d8f8cfe701..ac99738a92 100644 --- a/src/backends/backendsCommon/test/MockBackend.cpp +++ b/src/backends/backendsCommon/test/MockBackend.cpp @@ -99,7 +99,7 @@ IBackendInternal::IBackendContextPtr MockBackend::CreateBackendContext(const IRu } IBackendInternal::IBackendProfilingContextPtr MockBackend::CreateBackendProfilingContext( - const IRuntime::CreationOptions&, armnn::profiling::IBackendProfiling&) const + const IRuntime::CreationOptions&, IBackendProfilingPtr&) { return IBackendProfilingContextPtr{}; } diff --git a/src/backends/backendsCommon/test/MockBackend.hpp b/src/backends/backendsCommon/test/MockBackend.hpp index 3fe3100986..d1a0082e2e 100644 --- a/src/backends/backendsCommon/test/MockBackend.hpp +++ b/src/backends/backendsCommon/test/MockBackend.hpp @@ -5,14 +5,15 @@ #pragma once +#include #include #include -#include #include namespace armnn { + class MockBackend : public IBackendInternal { public: @@ -20,17 +21,20 @@ public: ~MockBackend() = default; static const BackendId& GetIdStatic(); - const BackendId& GetId() const override { return GetIdStatic(); } + const BackendId& GetId() const override + { + return GetIdStatic(); + } IBackendInternal::IMemoryManagerUniquePtr CreateMemoryManager() const override; - IBackendInternal::IWorkloadFactoryPtr CreateWorkloadFactory( - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager = nullptr) const override; + IBackendInternal::IWorkloadFactoryPtr + CreateWorkloadFactory(const IBackendInternal::IMemoryManagerSharedPtr& memoryManager = nullptr) const override; IBackendInternal::IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const override; - IBackendInternal::IBackendProfilingContextPtr CreateBackendProfilingContext( - const IRuntime::CreationOptions& creationOptions, - armnn::profiling::IBackendProfiling& backendProfiling) const override; + IBackendInternal::IBackendProfilingContextPtr + CreateBackendProfilingContext(const IRuntime::CreationOptions& creationOptions, + IBackendProfilingPtr& backendProfiling) override; IBackendInternal::Optimizations GetOptimizations() const override; IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override; @@ -38,7 +42,8 @@ public: OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const override; }; -class MockLayerSupport : public LayerSupportBase { +class MockLayerSupport : public LayerSupportBase +{ public: bool IsInputSupported(const TensorInfo& /*input*/, Optional /*reasonIfUnsupported = EmptyOptional()*/) const override @@ -47,7 +52,7 @@ public: } bool IsOutputSupported(const TensorInfo& /*input*/, - Optional /*reasonIfUnsupported = EmptyOptional()*/) const override + Optional /*reasonIfUnsupported = EmptyOptional()*/) const override { return true; } @@ -71,4 +76,4 @@ public: } }; -} // namespace armnn +} // namespace armnn -- cgit v1.2.1