xref: /aosp_15_r20/external/armnn/profiling/common/include/LabelsAndEventClasses.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include "ProfilingGuidGenerator.hpp"
9 
10 #include "DllExport.hpp"
11 
12 namespace arm
13 {
14 
15 namespace pipe
16 {
17 
18 class LabelsAndEventClasses
19 {
20 public:
21     // Labels (string value + GUID)
22     ARMNN_DLLEXPORT static std::string EMPTY_LABEL;
23     ARMNN_DLLEXPORT static std::string NAME_LABEL;
24     ARMNN_DLLEXPORT static std::string TYPE_LABEL;
25     ARMNN_DLLEXPORT static std::string INDEX_LABEL;
26     ARMNN_DLLEXPORT static std::string BACKENDID_LABEL;
27     ARMNN_DLLEXPORT static std::string CHILD_LABEL;
28     ARMNN_DLLEXPORT static std::string EXECUTION_OF_LABEL;
29     ARMNN_DLLEXPORT static std::string PROCESS_ID_LABEL;
30     ARMNN_DLLEXPORT static ProfilingStaticGuid EMPTY_GUID;
31     ARMNN_DLLEXPORT static ProfilingStaticGuid NAME_GUID;
32     ARMNN_DLLEXPORT static ProfilingStaticGuid TYPE_GUID;
33     ARMNN_DLLEXPORT static ProfilingStaticGuid INDEX_GUID;
34     ARMNN_DLLEXPORT static ProfilingStaticGuid BACKENDID_GUID;
35     ARMNN_DLLEXPORT static ProfilingStaticGuid CHILD_GUID;
36     ARMNN_DLLEXPORT static ProfilingStaticGuid EXECUTION_OF_GUID;
37     ARMNN_DLLEXPORT static ProfilingStaticGuid PROCESS_ID_GUID;
38 
39     // Common types
40     ARMNN_DLLEXPORT static std::string LAYER;
41     ARMNN_DLLEXPORT static std::string WORKLOAD;
42     ARMNN_DLLEXPORT static std::string NETWORK;
43     ARMNN_DLLEXPORT static std::string CONNECTION;
44     ARMNN_DLLEXPORT static std::string INFERENCE;
45     ARMNN_DLLEXPORT static std::string WORKLOAD_EXECUTION;
46     ARMNN_DLLEXPORT static ProfilingStaticGuid LAYER_GUID;
47     ARMNN_DLLEXPORT static ProfilingStaticGuid WORKLOAD_GUID;
48     ARMNN_DLLEXPORT static ProfilingStaticGuid NETWORK_GUID;
49     ARMNN_DLLEXPORT static ProfilingStaticGuid CONNECTION_GUID;
50     ARMNN_DLLEXPORT static ProfilingStaticGuid INFERENCE_GUID;
51     ARMNN_DLLEXPORT static ProfilingStaticGuid WORKLOAD_EXECUTION_GUID;
52 
53     // Event Class GUIDs
54     // Start of Life (SOL)
55     ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_SOL_EVENT_CLASS;
56     ARMNN_DLLEXPORT static std::string ARMNN_PROFILING_SOL_EVENT_CLASS_NAME;
57     ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_SOL_EVENT_CLASS_NAME_GUID;
58     // End of Life (EOL)
59     ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_EOL_EVENT_CLASS;
60     ARMNN_DLLEXPORT static std::string ARMNN_PROFILING_EOL_EVENT_CLASS_NAME;
61     ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_EOL_EVENT_CLASS_NAME_GUID;
62 
63 private:
64     static ProfilingGuidGenerator m_GuidGenerator;
65 };
66 
67 } // namespace pipe
68 
69 } // namespace arm
70