rocprofiler-sdk/cxx/perfetto.hpp File Reference#
Rocprofiler SDK Developer API 0.4.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:
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 |
Functions | |
PERFETTO_DEFINE_CATEGORIES (::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hsa_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hsa_api >::description), ::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hip_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hip_api >::description), ::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::marker_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::marker_api >::description), ::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::kernel_dispatch >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::kernel_dispatch >::description), ::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::memory_copy >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::memory_copy >::description)) | |
template<typename Np , typename Tp > | |
auto | rocprofiler::sdk::add_perfetto_annotation (perfetto_event_context_t &ctx, Np &&_name, Tp &&_val) |
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 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::kernel_dispatch), \
ROCPROFILER_PERFETTO_CATEGORY(category::memory_copy)
Definition at line 82 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 62 of file perfetto.hpp.
Function Documentation
◆ PERFETTO_DEFINE_CATEGORIES()
PERFETTO_DEFINE_CATEGORIES | ( | ::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hsa_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hsa_api >::description) | , |
::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hip_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::hip_api >::description) | , | ||
::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::marker_api >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::marker_api >::description) | , | ||
::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::kernel_dispatch >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::kernel_dispatch >::description) | , | ||
::perfetto::Category(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::memory_copy >::name) .SetDescription(::rocprofiler::sdk::perfetto_category<::rocprofiler::sdk::category::memory_copy >::description) | |||
) |
Generated by 1.9.8