From 8efb48a6847c5cd166c561127ae6611150963ce3 Mon Sep 17 00:00:00 2001 From: Nikhil Raj Date: Fri, 19 May 2023 11:14:28 +0100 Subject: Update Doxygen docu for 23.05 Signed-off-by: Nikhil Raj Change-Id: I0a992286f14fa68fcc6e5eba31ac39fed003cbbe --- ...profiling_service_initialiser_8cpp_source.xhtml | 247 +++++++++++++++++++++ 1 file changed, 247 insertions(+) create mode 100644 23.05/_arm_n_n_profiling_service_initialiser_8cpp_source.xhtml (limited to '23.05/_arm_n_n_profiling_service_initialiser_8cpp_source.xhtml') diff --git a/23.05/_arm_n_n_profiling_service_initialiser_8cpp_source.xhtml b/23.05/_arm_n_n_profiling_service_initialiser_8cpp_source.xhtml new file mode 100644 index 0000000000..0bb77dc289 --- /dev/null +++ b/23.05/_arm_n_n_profiling_service_initialiser_8cpp_source.xhtml @@ -0,0 +1,247 @@ + + + + + + + + + + + + + +ArmNN: src/armnn/ArmNNProfilingServiceInitialiser.cpp Source File + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  23.05 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ArmNNProfilingServiceInitialiser.cpp
+
+
+Go to the documentation of this file.
1 //
+
2 // Copyright © 2022 Arm Ltd. All rights reserved.
+
3 // SPDX-License-Identifier: MIT
+
4 //
+
5 
+ +
7 
+ + +
10 #include <armnn/utility/Assert.hpp>
+
11 
+
12 #include <common/include/Counter.hpp>
+
13 
+
14 namespace armnn
+
15 {
+
16 
+
17 void ArmNNProfilingServiceInitialiser::InitialiseProfilingService(arm::pipe::IProfilingService& profilingService)
+
18 {
+
19  uint16_t ZERO = 0;
+
20  double ONE = 1.0;
+
21  std::string ArmNN_Runtime("ArmNN_Runtime");
+
22  // Register a category for the basic runtime counters
+
23  if (!profilingService.IsCategoryRegistered(ArmNN_Runtime))
+
24  {
+
25  profilingService.GetCounterRegistry().RegisterCategory(ArmNN_Runtime);
+
26  }
+
27 
+
28  std::string networks("networks");
+
29  std::string networkLoads("Network loads");
+
30  // Register a counter for the number of Network loads
+
31  if (!profilingService.IsCounterRegistered(networkLoads))
+
32  {
+
33  const arm::pipe::Counter* loadedNetworksCounter =
+
34  profilingService.GetCounterRegistry().RegisterCounter(armnn::profiling::BACKEND_ID.Get(),
+
35  arm::pipe::NETWORK_LOADS,
+
36  ArmNN_Runtime,
+
37  ZERO,
+
38  ZERO,
+
39  ONE,
+
40  networkLoads,
+
41  "The number of networks loaded at runtime",
+
42  networks);
+
43  ARMNN_ASSERT(loadedNetworksCounter);
+
44  profilingService.InitializeCounterValue(loadedNetworksCounter->m_Uid);
+
45  }
+
46  // Register a counter for the number of unloaded networks
+
47  std::string networkUnloads("Network unloads");
+
48  if (!profilingService.IsCounterRegistered(networkUnloads))
+
49  {
+
50  const arm::pipe::Counter* unloadedNetworksCounter =
+
51  profilingService.GetCounterRegistry().RegisterCounter(armnn::profiling::BACKEND_ID.Get(),
+
52  arm::pipe::NETWORK_UNLOADS,
+
53  ArmNN_Runtime,
+
54  ZERO,
+
55  ZERO,
+
56  ONE,
+
57  networkUnloads,
+
58  "The number of networks unloaded at runtime",
+
59  networks);
+
60  ARMNN_ASSERT(unloadedNetworksCounter);
+
61  profilingService.InitializeCounterValue(unloadedNetworksCounter->m_Uid);
+
62  }
+
63  std::string backends("backends");
+
64  // Register a counter for the number of registered backends
+
65  std::string backendsRegistered("Backends registered");
+
66  if (!profilingService.IsCounterRegistered(backendsRegistered))
+
67  {
+
68  const arm::pipe::Counter* registeredBackendsCounter =
+
69  profilingService.GetCounterRegistry().RegisterCounter(armnn::profiling::BACKEND_ID.Get(),
+
70  arm::pipe::REGISTERED_BACKENDS,
+
71  ArmNN_Runtime,
+
72  ZERO,
+
73  ZERO,
+
74  ONE,
+
75  backendsRegistered,
+
76  "The number of registered backends",
+
77  backends);
+
78  ARMNN_ASSERT(registeredBackendsCounter);
+
79  profilingService.InitializeCounterValue(registeredBackendsCounter->m_Uid);
+
80 
+
81  // Due to backends being registered before the profiling service becomes active,
+
82  // we need to set the counter to the correct value here
+
83  profilingService.SetCounterValue(arm::pipe::REGISTERED_BACKENDS, static_cast<uint32_t>(
+ +
85  }
+
86  // Register a counter for the number of registered backends
+
87  std::string backendsUnregistered("Backends unregistered");
+
88  if (!profilingService.IsCounterRegistered(backendsUnregistered))
+
89  {
+
90  const arm::pipe::Counter* unregisteredBackendsCounter =
+
91  profilingService.GetCounterRegistry().RegisterCounter(armnn::profiling::BACKEND_ID.Get(),
+
92  arm::pipe::UNREGISTERED_BACKENDS,
+
93  ArmNN_Runtime,
+
94  ZERO,
+
95  ZERO,
+
96  ONE,
+
97  backendsUnregistered,
+
98  "The number of unregistered backends",
+
99  backends);
+
100  ARMNN_ASSERT(unregisteredBackendsCounter);
+
101  profilingService.InitializeCounterValue(unregisteredBackendsCounter->m_Uid);
+
102  }
+
103  // Register a counter for the number of inferences run
+
104  std::string inferences("inferences");
+
105  std::string inferencesRun("Inferences run");
+
106  if (!profilingService.IsCounterRegistered(inferencesRun))
+
107  {
+
108  const arm::pipe::Counter* inferencesRunCounter =
+
109  profilingService.GetCounterRegistry().RegisterCounter(armnn::profiling::BACKEND_ID.Get(),
+
110  arm::pipe::INFERENCES_RUN,
+
111  ArmNN_Runtime,
+
112  ZERO,
+
113  ZERO,
+
114  ONE,
+
115  inferencesRun,
+
116  "The number of inferences run",
+
117  inferences);
+
118  ARMNN_ASSERT(inferencesRunCounter);
+
119  profilingService.InitializeCounterValue(inferencesRunCounter->m_Uid);
+
120  }
+
121 }
+
122 
+
123 } // namespace armnn
+
+
+
BackendRegistry & BackendRegistryInstance()
+ +
Copyright (c) 2021 ARM Limited and Contributors.
+
void InitialiseProfilingService(arm::pipe::IProfilingService &profilingService) override
+ + + +
#define ARMNN_ASSERT(COND)
Definition: Assert.hpp:14
+ + + + -- cgit v1.2.1