diff options
author | David Beck <david.beck@arm.com> | 2018-10-23 13:35:58 +0100 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-10-25 09:49:58 +0100 |
commit | 29c75de868ac3a86a70b25f8da0d0c7e47d40803 (patch) | |
tree | db8dd31d26622ca252f6e2d2c86c7e20a0829e9e /src/armnn/LoadedNetwork.hpp | |
parent | 5cc8e56b4ca8d58dc11973c49c10a02a2f13580c (diff) | |
download | armnn-29c75de868ac3a86a70b25f8da0d0c7e47d40803.tar.gz |
IVGCVSW-2067 : dynamically create workload factories based on the backends in the network
Change-Id: Ide594db8c79ff67642721d8bad47624b88621fbd
Diffstat (limited to 'src/armnn/LoadedNetwork.hpp')
-rw-r--r-- | src/armnn/LoadedNetwork.hpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/armnn/LoadedNetwork.hpp b/src/armnn/LoadedNetwork.hpp index 3deb8bc2e2..51eb04f3df 100644 --- a/src/armnn/LoadedNetwork.hpp +++ b/src/armnn/LoadedNetwork.hpp @@ -11,13 +11,12 @@ #include "LayerFwd.hpp" #include "Profiling.hpp" -#include <backends/reference/RefWorkloadFactory.hpp> -#include <backends/neon/NeonWorkloadFactory.hpp> -#include <backends/cl/ClWorkloadFactory.hpp> +#include <backends/IBackendInternal.hpp> #include <backends/Workload.hpp> #include <backends/WorkloadFactory.hpp> #include <mutex> +#include <unordered_map> namespace cl { @@ -62,9 +61,11 @@ private: const IWorkloadFactory& GetWorkloadFactory(const Layer& layer) const; - RefWorkloadFactory m_CpuRef; - NeonWorkloadFactory m_CpuAcc; - ClWorkloadFactory m_GpuAcc; + using BackendPtrMap = std::unordered_map<BackendId, IBackendInternalUniquePtr>; + using WorkloadFactoryMap = std::unordered_map<BackendId, IBackendInternal::IWorkloadFactoryPtr>; + + BackendPtrMap m_Backends; + WorkloadFactoryMap m_WorkloadFactories; std::unique_ptr<OptimizedNetwork> m_OptimizedNetwork; WorkloadQueue m_InputQueue; |