From fd627ffaec8fd8801d980b4c91ee7c0607ab6aaf Mon Sep 17 00:00:00 2001 From: Jan Eilers Date: Thu, 25 Feb 2021 17:44:00 +0000 Subject: IVGCVSW-5687 Update Doxygen Docu * Update Doxygen Documentation for 21.02 release Signed-off-by: Jan Eilers Change-Id: I9ed2f9caab038836ea99d7b378d7899fe431a4e5 --- ...profiling_2_counter_directory_8hpp_source.xhtml | 159 +++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 21.02/src_2profiling_2_counter_directory_8hpp_source.xhtml (limited to '21.02/src_2profiling_2_counter_directory_8hpp_source.xhtml') diff --git a/21.02/src_2profiling_2_counter_directory_8hpp_source.xhtml b/21.02/src_2profiling_2_counter_directory_8hpp_source.xhtml new file mode 100644 index 0000000000..c02ee0a98c --- /dev/null +++ b/21.02/src_2profiling_2_counter_directory_8hpp_source.xhtml @@ -0,0 +1,159 @@ + + + + + + + + + + + + + +ArmNN: src/profiling/CounterDirectory.hpp Source File + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  21.02 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
CounterDirectory.hpp
+
+
+Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include "ICounterDirectory.hpp"
9 #include "ICounterRegistry.hpp"
10 
11 #include <string>
12 #include <unordered_set>
13 #include <unordered_map>
14 
16 
17 namespace armnn
18 {
19 
20 namespace profiling
21 {
22 
24 {
25 public:
26  CounterDirectory() = default;
27  ~CounterDirectory() = default;
28 
29  // Register profiling objects
30  const Category* RegisterCategory (const std::string& categoryName) override;
31  const Device* RegisterDevice (const std::string& deviceName,
32  uint16_t cores = 0,
33  const Optional<std::string>& parentCategoryName = EmptyOptional()) override;
34  const CounterSet* RegisterCounterSet(const std::string& counterSetName,
35  uint16_t count = 0,
36  const Optional<std::string>& parentCategoryName = EmptyOptional()) override;
37  const Counter* RegisterCounter(const BackendId& backendId,
38  const uint16_t uid,
39  const std::string& parentCategoryName,
40  uint16_t counterClass,
41  uint16_t interpolation,
42  double multiplier,
43  const std::string& name,
44  const std::string& description,
45  const Optional<std::string>& units = EmptyOptional(),
46  const Optional<uint16_t>& numberOfCores = EmptyOptional(),
47  const Optional<uint16_t>& deviceUid = EmptyOptional(),
48  const Optional<uint16_t>& counterSetUid = EmptyOptional()) override;
49 
50  // Getters for counts
51  uint16_t GetCategoryCount() const override { return armnn::numeric_cast<uint16_t>(m_Categories.size()); }
52  uint16_t GetDeviceCount() const override { return armnn::numeric_cast<uint16_t>(m_Devices.size()); }
53  uint16_t GetCounterSetCount() const override { return armnn::numeric_cast<uint16_t>(m_CounterSets.size()); }
54  uint16_t GetCounterCount() const override { return armnn::numeric_cast<uint16_t>(m_Counters.size()); }
55 
56  // Getters for collections
57  const Categories& GetCategories() const override { return m_Categories; }
58  const Devices& GetDevices() const override { return m_Devices; }
59  const CounterSets& GetCounterSets() const override { return m_CounterSets; }
60  const Counters& GetCounters() const override { return m_Counters; }
61 
62  // Getters for profiling objects
63  const Category* GetCategory(const std::string& name) const override;
64  const Device* GetDevice(uint16_t uid) const override;
65  const CounterSet* GetCounterSet(uint16_t uid) const override;
66  const Counter* GetCounter(uint16_t uid) const override;
67 
68  // Queries for profiling objects
69  bool IsCategoryRegistered(const std::string& categoryName) const;
70  bool IsDeviceRegistered(uint16_t deviceUid) const;
71  bool IsDeviceRegistered(const std::string& deviceName) const;
72  bool IsCounterSetRegistered(uint16_t counterSetUid) const;
73  bool IsCounterSetRegistered(const std::string& counterSetName) const;
74  bool IsCounterRegistered(uint16_t counterUid) const;
75  bool IsCounterRegistered(const std::string& counterName) const;
76 
77  // Clears all the counter directory contents
78  void Clear();
79 
80 private:
81  // The profiling collections owned by the counter directory
82  Categories m_Categories;
83  Devices m_Devices;
84  CounterSets m_CounterSets;
85  Counters m_Counters;
86 
87  // Helper functions
88  CategoriesIt FindCategory(const std::string& categoryName) const;
89  DevicesIt FindDevice(uint16_t deviceUid) const;
90  DevicesIt FindDevice(const std::string& deviceName) const;
91  CounterSetsIt FindCounterSet(uint16_t counterSetUid) const;
92  CounterSetsIt FindCounterSet(const std::string& counterSetName) const;
93  CountersIt FindCounter(uint16_t counterUid) const;
94  CountersIt FindCounter(const std::string& counterName) const;
95  uint16_t GetNumberOfCores(const Optional<uint16_t>& numberOfCores,
96  uint16_t deviceUid);
97 };
98 
99 } // namespace profiling
100 
101 } // namespace armnn
+
bool IsCategoryRegistered(const std::string &categoryName) const
+
const Category * RegisterCategory(const std::string &categoryName) override
+ + +
const Counter * RegisterCounter(const BackendId &backendId, const uint16_t uid, const std::string &parentCategoryName, uint16_t counterClass, uint16_t interpolation, double multiplier, const std::string &name, const std::string &description, const Optional< std::string > &units=EmptyOptional(), const Optional< uint16_t > &numberOfCores=EmptyOptional(), const Optional< uint16_t > &deviceUid=EmptyOptional(), const Optional< uint16_t > &counterSetUid=EmptyOptional()) override
+ +
const Counters & GetCounters() const override
+ + +
CounterSets::const_iterator CounterSetsIt
+
std::unordered_map< uint16_t, CounterPtr > Counters
+
Categories::const_iterator CategoriesIt
+ +
const Device * GetDevice(uint16_t uid) const override
+
uint16_t GetCounterSetCount() const override
+
Devices::const_iterator DevicesIt
+ +
Copyright (c) 2021 ARM Limited and Contributors.
+
bool IsDeviceRegistered(uint16_t deviceUid) const
+ +
std::unordered_map< uint16_t, CounterSetPtr > CounterSets
+
uint16_t GetDeviceCount() const override
+ +
const Devices & GetDevices() const override
+
uint16_t GetCategoryCount() const override
+
std::unordered_set< CategoryPtr > Categories
+
const Counter * GetCounter(uint16_t uid) const override
+
const Category * GetCategory(const std::string &name) const override
+
EmptyOptional is used to initialize the Optional class in case we want to have default value for an O...
Definition: Optional.hpp:32
+
const Device * RegisterDevice(const std::string &deviceName, uint16_t cores=0, const Optional< std::string > &parentCategoryName=EmptyOptional()) override
+
const Categories & GetCategories() const override
+
bool IsCounterRegistered(uint16_t counterUid) const
+ +
std::enable_if_t< std::is_unsigned< Source >::value &&std::is_unsigned< Dest >::value, Dest > numeric_cast(Source source)
Definition: NumericCast.hpp:35
+
uint16_t GetCounterCount() const override
+
const CounterSet * RegisterCounterSet(const std::string &counterSetName, uint16_t count=0, const Optional< std::string > &parentCategoryName=EmptyOptional()) override
+ +
std::unordered_map< uint16_t, DevicePtr > Devices
+
const CounterSet * GetCounterSet(uint16_t uid) const override
+ +
Counters::const_iterator CountersIt
+ +
bool IsCounterSetRegistered(uint16_t counterSetUid) const
+
const CounterSets & GetCounterSets() const override
+ +
+
+ + + + -- cgit v1.2.1