From 9aed8fb43441228343b925b42464a55042c47ca0 Mon Sep 17 00:00:00 2001 From: Nikhil Raj Date: Wed, 17 Nov 2021 13:16:45 +0000 Subject: IVGCVSW-6040 Update 21.11 Doxygen Documents Signed-off-by: Nikhil Raj Change-Id: Ia36ec98c4bebc27a69103911ea3409cd7db587a5 --- 21.11/_backend_settings_8hpp_source.xhtml | 138 ++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 21.11/_backend_settings_8hpp_source.xhtml (limited to '21.11/_backend_settings_8hpp_source.xhtml') diff --git a/21.11/_backend_settings_8hpp_source.xhtml b/21.11/_backend_settings_8hpp_source.xhtml new file mode 100644 index 0000000000..b923b0fd3c --- /dev/null +++ b/21.11/_backend_settings_8hpp_source.xhtml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + +ArmNN: src/armnn/BackendSettings.hpp Source File + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  21.11 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
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 "DeviceSpec.hpp"
9 
10 #include <armnn/BackendId.hpp>
12 
13 #include <vector>
14 
15 namespace armnn
16 {
17 
19 {
24 
25  BackendSettings() = default;
26 
27  BackendSettings(const BackendIdVector& preferredBackends,
28  const IDeviceSpec& deviceSpec)
29  {
30  Initialize(preferredBackends, deviceSpec);
31  }
32 
34  : m_PreferredBackends(other.m_PreferredBackends)
35  , m_SupportedBackends(other.m_SupportedBackends)
36  , m_SelectedBackends(other.m_SelectedBackends)
37  , m_IgnoredBackends(other.m_IgnoredBackends)
38  {
39  }
40 
41  bool IsBackendPreferred(const BackendId& backend) const
42  {
43  return IsBackendInCollection(backend, m_PreferredBackends);
44  }
45 
46  bool IsBackendSupported(const BackendId& backend) const
47  {
48  return IsBackendInCollection(backend, m_SupportedBackends);
49  }
50 
51  bool IsBackendSelected(const BackendId& backend) const
52  {
53  return IsBackendInCollection(backend, m_SelectedBackends);
54  }
55 
56  bool IsBackendIgnored(const BackendId& backend) const
57  {
58  return IsBackendInCollection(backend, m_IgnoredBackends);
59  }
60 
61  bool IsCpuRefUsed() const
62  {
63  BackendId cpuBackendId(Compute::CpuRef);
64  return IsBackendSupported(cpuBackendId) && IsBackendPreferred(cpuBackendId);
65  }
66 
68  {
69  BackendIdVector availablePreferredBackends;
70  for (const BackendId& backend : m_PreferredBackends)
71  {
72  if (IsBackendSupported(backend) && !IsBackendIgnored(backend))
73  {
74  availablePreferredBackends.push_back(backend);
75  }
76  }
77  return availablePreferredBackends;
78  }
79 
80 private:
81  void Initialize(const BackendIdVector& preferredBackends,
82  const IDeviceSpec& deviceSpec)
83  {
84  // Copy preferred backends from input
85  m_PreferredBackends = preferredBackends;
86 
87  // Obtain list of supported backends
88  const DeviceSpec& spec = *PolymorphicDowncast<const DeviceSpec*>(&deviceSpec);
89  m_SupportedBackends = spec.GetSupportedBackends();
90  }
91 
92  template<typename Collection>
93  bool IsBackendInCollection(const BackendId& backend, const Collection& collection) const
94  {
95  return std::find(collection.begin(), collection.end(), backend) != collection.end();
96  }
97 };
98 
99 } //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:193
+ +
std::vector< BackendId > BackendIdVector
Definition: BackendId.hpp:192
+
BackendSettings(const BackendIdVector &preferredBackends, const IDeviceSpec &deviceSpec)
+
BackendIdSet m_SupportedBackends
+
Copyright (c) 2021 ARM Limited and Contributors.
+
bool IsBackendSupported(const BackendId &backend) const
+ + +
BackendIdVector GetAvailablePreferredBackends() const
+
Device specific knowledge to be passed to the optimizer.
Definition: Types.hpp:267
+ +
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