From a25886e0966a6b9433cd23595688fadb88a161b2 Mon Sep 17 00:00:00 2001 From: Sadik Armagan Date: Tue, 15 Sep 2020 17:17:08 +0100 Subject: IVGCVSW-5317 'Add enable_fast_math Option to ExecuteNetwork' Signed-off-by: Sadik Armagan Change-Id: I4eb3e27837aea926593d49f9ccea07bab8388d5b --- src/backends/backendsCommon/IBackendInternal.cpp | 42 ++++++++++++++++++++---- 1 file changed, 36 insertions(+), 6 deletions(-) (limited to 'src/backends/backendsCommon/IBackendInternal.cpp') diff --git a/src/backends/backendsCommon/IBackendInternal.cpp b/src/backends/backendsCommon/IBackendInternal.cpp index 08060331e7..81fc515b98 100644 --- a/src/backends/backendsCommon/IBackendInternal.cpp +++ b/src/backends/backendsCommon/IBackendInternal.cpp @@ -43,22 +43,36 @@ IBackendInternal::IWorkloadFactoryPtr IBackendInternal::CreateWorkloadFactory( const IMemoryManagerSharedPtr& memoryManager, const ModelOptions& modelOptions) const { - if(modelOptions.empty()) + if (!modelOptions.empty()) { - return CreateWorkloadFactory(memoryManager); + for (auto optionsGroup : modelOptions) + { + if (optionsGroup.GetBackendId() == GetId()) + { + return IWorkloadFactoryPtr{}; + } + } } - return IWorkloadFactoryPtr{}; + + return CreateWorkloadFactory(memoryManager); } IBackendInternal::IWorkloadFactoryPtr IBackendInternal::CreateWorkloadFactory( class TensorHandleFactoryRegistry& tensorHandleFactoryRegistry, const ModelOptions& modelOptions) const { - if(modelOptions.empty()) + if (!modelOptions.empty()) { - return CreateWorkloadFactory(tensorHandleFactoryRegistry); + for (auto optionsGroup : modelOptions) + { + if (optionsGroup.GetBackendId() == GetId()) + { + return IWorkloadFactoryPtr{}; + } + } } - return IWorkloadFactoryPtr{}; + + return CreateWorkloadFactory(tensorHandleFactoryRegistry); } IBackendInternal::IBackendContextPtr IBackendInternal::CreateBackendContext(const IRuntime::CreationOptions&) const @@ -78,6 +92,22 @@ IBackendInternal::IBackendProfilingContextPtr IBackendInternal::CreateBackendPro return IBackendProfilingContextPtr{}; } +IBackendInternal::ILayerSupportSharedPtr IBackendInternal::GetLayerSupport(const ModelOptions& modelOptions) const +{ + if (!modelOptions.empty()) + { + for (auto optionsGroup : modelOptions) + { + if (optionsGroup.GetBackendId() == GetId()) + { + return ILayerSupportSharedPtr{}; + } + } + } + + return GetLayerSupport(); +} + // Default implementation of OptimizeSubgraphView for backward compatibility with the old API. // Override this method with a custom optimization implementation. OptimizationViews IBackendInternal::OptimizeSubgraphView(const SubgraphView& subgraph) const -- cgit v1.2.1