blob: 835fc7923e36726b5f08fd2d7334c94f3cc1715b [file] [log] [blame]
Jim Flynnab845752019-10-25 13:17:30 +01001//
Jim Flynn6398a982020-05-27 17:05:21 +01002// Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
Jim Flynnab845752019-10-25 13:17:30 +01003// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Jim Flynnab845752019-10-25 13:17:30 +01008#include "ProfilingGuidGenerator.hpp"
9
janeil01c4946c72019-11-07 09:32:28 +000010#include <armnn/Types.hpp>
Rob Hughesa91479c2020-01-07 09:40:12 +000011#include <DllExport.hpp>
janeil01c4946c72019-11-07 09:32:28 +000012
Jim Flynnab845752019-10-25 13:17:30 +010013namespace armnn
14{
15
16namespace profiling
17{
18
19class LabelsAndEventClasses
20{
21public:
22 // Labels (string value + GUID)
Finn Williams0a336dc2020-05-11 15:39:58 +010023 ARMNN_DLLEXPORT static std::string EMPTY_LABEL;
Rob Hughesa91479c2020-01-07 09:40:12 +000024 ARMNN_DLLEXPORT static std::string NAME_LABEL;
25 ARMNN_DLLEXPORT static std::string TYPE_LABEL;
26 ARMNN_DLLEXPORT static std::string INDEX_LABEL;
27 ARMNN_DLLEXPORT static std::string BACKENDID_LABEL;
Jim Flynn6398a982020-05-27 17:05:21 +010028 ARMNN_DLLEXPORT static std::string CHILD_LABEL;
29 ARMNN_DLLEXPORT static std::string EXECUTION_OF_LABEL;
Finn Williams0a336dc2020-05-11 15:39:58 +010030 ARMNN_DLLEXPORT static ProfilingStaticGuid EMPTY_GUID;
Rob Hughesa91479c2020-01-07 09:40:12 +000031 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;
Jim Flynn6398a982020-05-27 17:05:21 +010035 ARMNN_DLLEXPORT static ProfilingStaticGuid CHILD_GUID;
36 ARMNN_DLLEXPORT static ProfilingStaticGuid EXECUTION_OF_GUID;
Narumol Prangnawaratdf31cfe2019-11-22 11:26:06 +000037
38 // Common types
Rob Hughesa91479c2020-01-07 09:40:12 +000039 ARMNN_DLLEXPORT static std::string LAYER;
40 ARMNN_DLLEXPORT static std::string WORKLOAD;
41 ARMNN_DLLEXPORT static std::string NETWORK;
42 ARMNN_DLLEXPORT static std::string CONNECTION;
43 ARMNN_DLLEXPORT static std::string INFERENCE;
44 ARMNN_DLLEXPORT static std::string WORKLOAD_EXECUTION;
45 ARMNN_DLLEXPORT static ProfilingStaticGuid LAYER_GUID;
46 ARMNN_DLLEXPORT static ProfilingStaticGuid WORKLOAD_GUID;
47 ARMNN_DLLEXPORT static ProfilingStaticGuid NETWORK_GUID;
48 ARMNN_DLLEXPORT static ProfilingStaticGuid CONNECTION_GUID;
49 ARMNN_DLLEXPORT static ProfilingStaticGuid INFERENCE_GUID;
50 ARMNN_DLLEXPORT static ProfilingStaticGuid WORKLOAD_EXECUTION_GUID;
Jim Flynnab845752019-10-25 13:17:30 +010051
52 // Event Class GUIDs
Jim Flynn1892d212020-05-26 21:10:49 +010053 // Start of Life (SOL)
Rob Hughesa91479c2020-01-07 09:40:12 +000054 ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_SOL_EVENT_CLASS;
Jim Flynn1892d212020-05-26 21:10:49 +010055 ARMNN_DLLEXPORT static std::string ARMNN_PROFILING_SOL_EVENT_CLASS_NAME;
56 ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_SOL_EVENT_CLASS_NAME_GUID;
57 // End of Life (EOL)
Rob Hughesa91479c2020-01-07 09:40:12 +000058 ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_EOL_EVENT_CLASS;
Jim Flynn1892d212020-05-26 21:10:49 +010059 ARMNN_DLLEXPORT static std::string ARMNN_PROFILING_EOL_EVENT_CLASS_NAME;
60 ARMNN_DLLEXPORT static ProfilingStaticGuid ARMNN_PROFILING_EOL_EVENT_CLASS_NAME_GUID;
Jim Flynnab845752019-10-25 13:17:30 +010061
62private:
63 static ProfilingGuidGenerator m_GuidGenerator;
64};
65
66} // namespace profiling
67
68} // namespace armnn