rocprofiler-sdk/cxx/perfetto.hpp File Reference#
Rocprofiler SDK Developer API 0.6.0
ROCm Profiling API and tools
|
perfetto.hpp File Reference
#include <rocprofiler-sdk/cxx/details/mpl.hpp>
#include <cstddef>
#include <ostream>
#include <sstream>
#include <string>
#include <string_view>
#include <type_traits>
#include <utility>
#include <perfetto.h>
Include dependency graph for perfetto.hpp:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Namespaces | |
namespace | rocprofiler |
namespace | rocprofiler::sdk |
namespace | rocprofiler::sdk::category |
Macros | |
#define | ROCPROFILER_DEFINE_PERFETTO_CATEGORY(NAME, DESC, ...) |
#define | ROCPROFILER_DEFINE_CATEGORY(NS, VALUE, DESC) |
#define | ROCPROFILER_PERFETTO_CATEGORY(TYPE) |
#define | ROCPROFILER_PERFETTO_CATEGORIES |
Typedefs | |
using | rocprofiler::sdk::perfetto_event_context_t = ::perfetto::EventContext |
Data Structure Documentation
◆ rocprofiler::sdk::category::hsa_api
struct rocprofiler::sdk::category::hsa_api |
Definition at line 77 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::hsa_api:
◆ rocprofiler::sdk::category::hip_api
struct rocprofiler::sdk::category::hip_api |
Definition at line 78 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::hip_api:
◆ rocprofiler::sdk::category::marker_api
struct rocprofiler::sdk::category::marker_api |
Definition at line 79 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::marker_api:
◆ rocprofiler::sdk::category::rccl_api
struct rocprofiler::sdk::category::rccl_api |
Definition at line 80 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::rccl_api:
◆ rocprofiler::sdk::category::openmp
struct rocprofiler::sdk::category::openmp |
Definition at line 81 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::openmp:
◆ rocprofiler::sdk::category::kernel_dispatch
struct rocprofiler::sdk::category::kernel_dispatch |
Definition at line 82 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::kernel_dispatch:
◆ rocprofiler::sdk::category::memory_copy
struct rocprofiler::sdk::category::memory_copy |
Definition at line 83 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::memory_copy:
◆ rocprofiler::sdk::category::memory_allocation
struct rocprofiler::sdk::category::memory_allocation |
Definition at line 84 of file perfetto.hpp.
Collaboration diagram for rocprofiler::sdk::category::memory_allocation:
Macro Definition Documentation
◆ ROCPROFILER_DEFINE_CATEGORY
#define ROCPROFILER_DEFINE_CATEGORY | ( | NS, | |
VALUE, | |||
DESC | |||
) |
Value:
namespace rocprofiler \
{ \
namespace sdk \
{ \
namespace NS \
{ \
struct VALUE \
{}; \
} \
} \
} \
ROCPROFILER_DEFINE_PERFETTO_CATEGORY(#VALUE, DESC, NS::VALUE)
Definition code_printing.hpp:42
Definition at line 49 of file perfetto.hpp.
51 { \
52 namespace sdk \
53 { \
54 namespace NS \
55 { \
56 struct VALUE \
57 {}; \
58 } \
59 } \
60 } \
61 ROCPROFILER_DEFINE_PERFETTO_CATEGORY(#VALUE, DESC, NS::VALUE)
◆ ROCPROFILER_DEFINE_PERFETTO_CATEGORY
#define ROCPROFILER_DEFINE_PERFETTO_CATEGORY | ( | NAME, | |
DESC, | |||
... | |||
) |
Value:
namespace rocprofiler \
{ \
namespace sdk \
{ \
template <> \
struct perfetto_category<__VA_ARGS__> \
{ \
static constexpr auto name = NAME; \
static constexpr auto description = DESC; \
}; \
} \
}
Definition at line 35 of file perfetto.hpp.
37 { \
38 namespace sdk \
39 { \
40 template <> \
41 struct perfetto_category<__VA_ARGS__> \
42 { \
43 static constexpr auto name = NAME; \
44 static constexpr auto description = DESC; \
45 }; \
46 } \
47 }
◆ ROCPROFILER_PERFETTO_CATEGORIES
#define ROCPROFILER_PERFETTO_CATEGORIES |
Value:
ROCPROFILER_PERFETTO_CATEGORY(category::hsa_api), \
ROCPROFILER_PERFETTO_CATEGORY(category::hip_api), \
ROCPROFILER_PERFETTO_CATEGORY(category::marker_api), \
ROCPROFILER_PERFETTO_CATEGORY(category::rccl_api), \
ROCPROFILER_PERFETTO_CATEGORY(category::openmp), \
ROCPROFILER_PERFETTO_CATEGORY(category::kernel_dispatch), \
ROCPROFILER_PERFETTO_CATEGORY(category::memory_copy), \
ROCPROFILER_PERFETTO_CATEGORY(category::memory_allocation)
Definition at line 86 of file perfetto.hpp.
◆ ROCPROFILER_PERFETTO_CATEGORY
#define ROCPROFILER_PERFETTO_CATEGORY | ( | TYPE | ) |
Value:
::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::TYPE>::name) \
.SetDescription( \
Definition at line 63 of file perfetto.hpp.
Function Documentation
◆ PERFETTO_DEFINE_CATEGORIES()
Generated by 1.9.8