From 6940dd720ebb6b3d1df8ca203ab696daefe58189 Mon Sep 17 00:00:00 2001 From: Jim Flynn Date: Fri, 20 Mar 2020 12:25:56 +0000 Subject: renamed Documentation folder 20.02 and added .nojekyll file Signed-off-by: Jim Flynn --- 20.02/_backend_settings_8hpp_source.xhtml | 137 ++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 20.02/_backend_settings_8hpp_source.xhtml (limited to '20.02/_backend_settings_8hpp_source.xhtml') diff --git a/20.02/_backend_settings_8hpp_source.xhtml b/20.02/_backend_settings_8hpp_source.xhtml new file mode 100644 index 0000000000..f04dc7c387 --- /dev/null +++ b/20.02/_backend_settings_8hpp_source.xhtml @@ -0,0 +1,137 @@ + + + + + + + + + + + + + +ArmNN: src/armnn/BackendSettings.hpp Source File + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  20.02 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
BackendSettings.hpp
+
+
+Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include <armnn/BackendId.hpp>
9 
10 #include "DeviceSpec.hpp"
11 
12 #include <vector>
13 
14 namespace armnn
15 {
16 
18 {
23 
24  BackendSettings() = default;
25 
26  BackendSettings(const BackendIdVector& preferredBackends,
27  const IDeviceSpec& deviceSpec)
28  {
29  Initialize(preferredBackends, deviceSpec);
30  }
31 
33  : m_PreferredBackends(other.m_PreferredBackends)
34  , m_SupportedBackends(other.m_SupportedBackends)
35  , m_SelectedBackends(other.m_SelectedBackends)
36  , m_IgnoredBackends(other.m_IgnoredBackends)
37  {
38  }
39 
40  bool IsBackendPreferred(const BackendId& backend) const
41  {
42  return IsBackendInCollection(backend, m_PreferredBackends);
43  }
44 
45  bool IsBackendSupported(const BackendId& backend) const
46  {
47  return IsBackendInCollection(backend, m_SupportedBackends);
48  }
49 
50  bool IsBackendSelected(const BackendId& backend) const
51  {
52  return IsBackendInCollection(backend, m_SelectedBackends);
53  }
54 
55  bool IsBackendIgnored(const BackendId& backend) const
56  {
57  return IsBackendInCollection(backend, m_IgnoredBackends);
58  }
59 
60  bool IsCpuRefUsed() const
61  {
62  BackendId cpuBackendId(Compute::CpuRef);
63  return IsBackendSupported(cpuBackendId) && IsBackendPreferred(cpuBackendId);
64  }
65 
67  {
68  BackendIdVector availablePreferredBackends;
69  for (const BackendId& backend : m_PreferredBackends)
70  {
71  if (IsBackendSupported(backend) && !IsBackendIgnored(backend))
72  {
73  availablePreferredBackends.push_back(backend);
74  }
75  }
76  return availablePreferredBackends;
77  }
78 
79 private:
80  void Initialize(const BackendIdVector& preferredBackends,
81  const IDeviceSpec& deviceSpec)
82  {
83  // Copy preferred backends from input
84  m_PreferredBackends = preferredBackends;
85 
86  // Obtain list of supported backends
87  const DeviceSpec& spec = *boost::polymorphic_downcast<const DeviceSpec*>(&deviceSpec);
88  m_SupportedBackends = spec.GetSupportedBackends();
89  }
90 
91  template<typename Collection>
92  bool IsBackendInCollection(const BackendId& backend, const Collection& collection) const
93  {
94  return std::find(collection.begin(), collection.end(), backend) != collection.end();
95  }
96 };
97 
98 } //namespace armnn
BackendSettings(const BackendSettings &other)
+ +
CPU Execution: Reference C++ kernels.
+
BackendIdSet m_IgnoredBackends
+
bool IsBackendSelected(const BackendId &backend) const
+
std::unordered_set< BackendId > BackendIdSet
Definition: BackendId.hpp:191
+ +
std::vector< BackendId > BackendIdVector
Definition: BackendId.hpp:190
+
BackendSettings(const BackendIdVector &preferredBackends, const IDeviceSpec &deviceSpec)
+
BackendIdSet m_SupportedBackends
+
Copyright (c) 2020 ARM Limited.
+
bool IsBackendSupported(const BackendId &backend) const
+ +
BackendIdVector GetAvailablePreferredBackends() const
+
Device specific knowledge to be passed to the optimizer.
Definition: Types.hpp:161
+ +
bool IsBackendIgnored(const BackendId &backend) const
+
BackendIdVector m_PreferredBackends
+
virtual const BackendIdSet & GetSupportedBackends() const override
Definition: DeviceSpec.hpp:25
+
BackendIdSet m_SelectedBackends
+
bool IsBackendPreferred(const BackendId &backend) const
+ + + +
+
+ + + + -- cgit v1.2.1