Enable clang format for itt headers (#19326)
This commit is contained in:
parent
dcfb6bb042
commit
bc868a8873
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
set(TARGET_NAME openvino_itt)
|
set(TARGET_NAME openvino_itt)
|
||||||
|
|
||||||
file(GLOB_RECURSE SOURCES "src/*.cpp" "src/*.hpp")
|
file(GLOB_RECURSE SOURCES "src/*.cpp" "src/*.hpp" "include/*.hpp")
|
||||||
|
|
||||||
add_library(${TARGET_NAME} STATIC ${SOURCES})
|
add_library(${TARGET_NAME} STATIC ${SOURCES})
|
||||||
|
|
||||||
|
@ -10,17 +10,17 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#if defined(__GNUC__) || (defined(__ICC) && (__ICC >= 600))
|
#if defined(__GNUC__) || (defined(__ICC) && (__ICC >= 600))
|
||||||
#define ITT_FUNCTION_NAME __PRETTY_FUNCTION__
|
# define ITT_FUNCTION_NAME __PRETTY_FUNCTION__
|
||||||
#elif defined(__FUNCSIG__)
|
#elif defined(__FUNCSIG__)
|
||||||
#define ITT_FUNCTION_NAME __FUNCSIG__
|
# define ITT_FUNCTION_NAME __FUNCSIG__
|
||||||
#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600))
|
#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600))
|
||||||
#define ITT_FUNCTION_NAME __FUNCTION__
|
# define ITT_FUNCTION_NAME __FUNCTION__
|
||||||
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901)
|
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901)
|
||||||
#define ITT_FUNCTION_NAME __func__
|
# define ITT_FUNCTION_NAME __func__
|
||||||
#elif defined(_MSC_VER) && (_MSC_VER >= 1900) /* VS2015 */
|
#elif defined(_MSC_VER) && (_MSC_VER >= 1900) /* VS2015 */
|
||||||
#define ITT_FUNCTION_NAME __func__
|
# define ITT_FUNCTION_NAME __func__
|
||||||
#elif defined(__cplusplus) && (__cplusplus >= 201103)
|
#elif defined(__cplusplus) && (__cplusplus >= 201103)
|
||||||
#define ITT_FUNCTION_NAME __func__
|
# define ITT_FUNCTION_NAME __func__
|
||||||
#else
|
#else
|
||||||
#error "Function name is N/A"
|
# error "Function name is N/A"
|
||||||
#endif
|
#endif
|
||||||
|
@ -17,206 +17,192 @@
|
|||||||
#include "openvino/util/pp.hpp"
|
#include "openvino/util/pp.hpp"
|
||||||
|
|
||||||
/** @ingroup ov_dev_profiling
|
/** @ingroup ov_dev_profiling
|
||||||
* @brief openvino namespace
|
* @brief openvino namespace
|
||||||
*/
|
*/
|
||||||
namespace openvino
|
namespace openvino {
|
||||||
{
|
namespace itt {
|
||||||
namespace itt
|
/**
|
||||||
{
|
* @typedef domain_t
|
||||||
/**
|
* @ingroup ov_dev_profiling
|
||||||
* @typedef domain_t
|
* @brief A domain type which enables tagging trace data for different modules or libraries in a program.
|
||||||
* @ingroup ov_dev_profiling
|
*/
|
||||||
* @brief A domain type which enables tagging trace data for different modules or libraries in a program.
|
typedef struct domain_ {
|
||||||
*/
|
} * domain_t;
|
||||||
typedef struct domain_ {} *domain_t;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @typedef handle_t
|
* @typedef handle_t
|
||||||
* @ingroup ov_dev_profiling
|
* @ingroup ov_dev_profiling
|
||||||
* @brief Annotation handle for section of code which would be named at runtime.
|
* @brief Annotation handle for section of code which would be named at runtime.
|
||||||
*/
|
*/
|
||||||
typedef struct handle_ {} *handle_t;
|
typedef struct handle_ {
|
||||||
|
} * handle_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @cond
|
* @cond
|
||||||
*/
|
*/
|
||||||
namespace internal
|
namespace internal {
|
||||||
{
|
domain_t domain(char const* name);
|
||||||
domain_t domain(char const* name);
|
handle_t handle(char const* name);
|
||||||
handle_t handle(char const* name);
|
void taskBegin(domain_t d, handle_t t);
|
||||||
void taskBegin(domain_t d, handle_t t);
|
void taskEnd(domain_t d);
|
||||||
void taskEnd(domain_t d);
|
void threadName(const char* name);
|
||||||
void threadName(const char* name);
|
} // namespace internal
|
||||||
|
/**
|
||||||
|
* @endcond
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @fn void threadName(const char* name)
|
||||||
|
* @ingroup ov_dev_profiling
|
||||||
|
* @brief Set thread name using a char string.
|
||||||
|
* @param name [in] The thread name
|
||||||
|
*/
|
||||||
|
inline void threadName(const char* name) {
|
||||||
|
internal::threadName(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void threadName(const std::string& name) {
|
||||||
|
internal::threadName(name.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
inline handle_t handle(char const* name) {
|
||||||
|
return internal::handle(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
inline handle_t handle(const std::string& name) {
|
||||||
|
return internal::handle(name.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @fn handle_t handle(char const *name)
|
||||||
|
* @ingroup ov_dev_profiling
|
||||||
|
* @brief Create annotation handle with a given name.
|
||||||
|
* @details If template function is instantiated with a tag, the handle is created as a singleton.
|
||||||
|
* @param name [in] The annotation name
|
||||||
|
*/
|
||||||
|
template <typename Tag>
|
||||||
|
handle_t handle(char const* name) {
|
||||||
|
static auto h = internal::handle(name);
|
||||||
|
return h;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename Tag>
|
||||||
|
handle_t handle(const std::string& name) {
|
||||||
|
return handle<Tag>(name.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename Tag>
|
||||||
|
handle_t handle(handle_t h) {
|
||||||
|
return h;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @class ScopedTask
|
||||||
|
* @ingroup ov_dev_profiling
|
||||||
|
* @brief Used to annotate section of code which would be named at runtime
|
||||||
|
* @tparam The @p domain parameter is domain type which shoud be defined with OV_ITT_DOMAIN() macro.
|
||||||
|
*/
|
||||||
|
template <domain_t (*domain)()>
|
||||||
|
struct ScopedTask {
|
||||||
|
/**
|
||||||
|
* @brief Construct ScopedTask with defined annotation handle
|
||||||
|
*/
|
||||||
|
ScopedTask(handle_t taskHandle) noexcept {
|
||||||
|
internal::taskBegin(domain(), taskHandle);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief The ScopedTask destructor closes or ends the task scope
|
||||||
|
*/
|
||||||
|
~ScopedTask() noexcept {
|
||||||
|
internal::taskEnd(domain());
|
||||||
|
}
|
||||||
|
|
||||||
|
ScopedTask(const ScopedTask&) = delete;
|
||||||
|
ScopedTask& operator=(const ScopedTask&) = delete;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @class TaskChain
|
||||||
|
* @ingroup ov_dev_profiling
|
||||||
|
* @brief Used to annotate a sequence of sections of code which would be named at runtime
|
||||||
|
* @tparam The @p domain parameter is domain type which shoud be defined with OV_ITT_DOMAIN() macro.
|
||||||
|
*/
|
||||||
|
template <domain_t (*domain)()>
|
||||||
|
class TaskChain {
|
||||||
|
uint32_t _id = 1;
|
||||||
|
std::string _prefix;
|
||||||
|
bool _skipped{};
|
||||||
|
|
||||||
|
TaskChain(const TaskChain&) = delete;
|
||||||
|
TaskChain& operator=(const TaskChain&) = delete;
|
||||||
|
|
||||||
|
public:
|
||||||
|
/**
|
||||||
|
* @brief Construct TaskChain with defined annotation handle
|
||||||
|
*/
|
||||||
|
TaskChain(handle_t taskHandle, std::string&& prefix) noexcept : _prefix(std::forward<std::string>(prefix)) {
|
||||||
|
internal::taskBegin(domain(), taskHandle);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief The TaskChain destructor closes or ends the task scope
|
||||||
|
*/
|
||||||
|
~TaskChain() noexcept {
|
||||||
|
skip();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Ends the previous task from the chain and starts a new one with the given annotation handle
|
||||||
|
*/
|
||||||
|
void next(handle_t taskHandle) {
|
||||||
|
if (_skipped)
|
||||||
|
_skipped = false;
|
||||||
|
else
|
||||||
|
internal::taskEnd(domain());
|
||||||
|
internal::taskBegin(domain(), taskHandle);
|
||||||
|
++_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief Generating a task name using a sequence number.
|
||||||
|
*/
|
||||||
|
std::string taskName() const {
|
||||||
|
return _prefix + "_" + std::to_string(_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief Generating a task name using a scope name.
|
||||||
|
*/
|
||||||
|
std::string taskNameOrHandle(const std::string& name) const {
|
||||||
|
return _prefix + "_" + name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief Returns a handle provided as argument.
|
||||||
|
*/
|
||||||
|
handle_t taskNameOrHandle(handle_t handle) const {
|
||||||
|
return handle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief Skips the remaining task scope.
|
||||||
|
*/
|
||||||
|
void skip() {
|
||||||
|
if (!_skipped) {
|
||||||
|
_skipped = true;
|
||||||
|
internal::taskEnd(domain());
|
||||||
}
|
}
|
||||||
/**
|
}
|
||||||
* @endcond
|
};
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @fn void threadName(const char* name)
|
|
||||||
* @ingroup ov_dev_profiling
|
|
||||||
* @brief Set thread name using a char string.
|
|
||||||
* @param name [in] The thread name
|
|
||||||
*/
|
|
||||||
inline void threadName(const char* name)
|
|
||||||
{
|
|
||||||
internal::threadName(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
inline void threadName(const std::string &name)
|
|
||||||
{
|
|
||||||
internal::threadName(name.c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
inline handle_t handle(char const *name)
|
|
||||||
{
|
|
||||||
return internal::handle(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
inline handle_t handle(const std::string &name)
|
|
||||||
{
|
|
||||||
return internal::handle(name.c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @fn handle_t handle(char const *name)
|
|
||||||
* @ingroup ov_dev_profiling
|
|
||||||
* @brief Create annotation handle with a given name.
|
|
||||||
* @details If template function is instantiated with a tag, the handle is created as a singleton.
|
|
||||||
* @param name [in] The annotation name
|
|
||||||
*/
|
|
||||||
template <typename Tag>
|
|
||||||
handle_t handle(char const *name)
|
|
||||||
{
|
|
||||||
static auto h = internal::handle(name);
|
|
||||||
return h;
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename Tag>
|
|
||||||
handle_t handle(const std::string &name)
|
|
||||||
{
|
|
||||||
return handle<Tag>(name.c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename Tag>
|
|
||||||
handle_t handle(handle_t h)
|
|
||||||
{
|
|
||||||
return h;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @class ScopedTask
|
|
||||||
* @ingroup ov_dev_profiling
|
|
||||||
* @brief Used to annotate section of code which would be named at runtime
|
|
||||||
* @tparam The @p domain parameter is domain type which shoud be defined with OV_ITT_DOMAIN() macro.
|
|
||||||
*/
|
|
||||||
template <domain_t(*domain)()>
|
|
||||||
struct ScopedTask
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* @brief Construct ScopedTask with defined annotation handle
|
|
||||||
*/
|
|
||||||
ScopedTask(handle_t taskHandle) noexcept
|
|
||||||
{
|
|
||||||
internal::taskBegin(domain(), taskHandle);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief The ScopedTask destructor closes or ends the task scope
|
|
||||||
*/
|
|
||||||
~ScopedTask() noexcept { internal::taskEnd(domain()); }
|
|
||||||
|
|
||||||
ScopedTask(const ScopedTask&) = delete;
|
|
||||||
ScopedTask& operator=(const ScopedTask&) = delete;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @class TaskChain
|
|
||||||
* @ingroup ov_dev_profiling
|
|
||||||
* @brief Used to annotate a sequence of sections of code which would be named at runtime
|
|
||||||
* @tparam The @p domain parameter is domain type which shoud be defined with OV_ITT_DOMAIN() macro.
|
|
||||||
*/
|
|
||||||
template <domain_t(*domain)()>
|
|
||||||
class TaskChain
|
|
||||||
{
|
|
||||||
uint32_t _id = 1;
|
|
||||||
std::string _prefix;
|
|
||||||
bool _skipped {};
|
|
||||||
|
|
||||||
TaskChain(const TaskChain&) = delete;
|
|
||||||
TaskChain& operator=(const TaskChain&) = delete;
|
|
||||||
|
|
||||||
public:
|
|
||||||
/**
|
|
||||||
* @brief Construct TaskChain with defined annotation handle
|
|
||||||
*/
|
|
||||||
TaskChain(handle_t taskHandle, std::string && prefix) noexcept
|
|
||||||
: _prefix(std::forward<std::string>(prefix))
|
|
||||||
{
|
|
||||||
internal::taskBegin(domain(), taskHandle);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief The TaskChain destructor closes or ends the task scope
|
|
||||||
*/
|
|
||||||
~TaskChain() noexcept { skip(); }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Ends the previous task from the chain and starts a new one with the given annotation handle
|
|
||||||
*/
|
|
||||||
void next(handle_t taskHandle)
|
|
||||||
{
|
|
||||||
if(_skipped)
|
|
||||||
_skipped = false;
|
|
||||||
else
|
|
||||||
internal::taskEnd(domain());
|
|
||||||
internal::taskBegin(domain(), taskHandle);
|
|
||||||
++_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @brief Generating a task name using a sequence number.
|
|
||||||
*/
|
|
||||||
std::string taskName() const
|
|
||||||
{
|
|
||||||
return _prefix + "_" + std::to_string(_id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @brief Generating a task name using a scope name.
|
|
||||||
*/
|
|
||||||
std::string taskNameOrHandle(const std::string & name) const
|
|
||||||
{
|
|
||||||
return _prefix + "_" + name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @brief Returns a handle provided as argument.
|
|
||||||
*/
|
|
||||||
handle_t taskNameOrHandle(handle_t handle) const
|
|
||||||
{
|
|
||||||
return handle;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @brief Skips the remaining task scope.
|
|
||||||
*/
|
|
||||||
void skip()
|
|
||||||
{
|
|
||||||
if(!_skipped)
|
|
||||||
{
|
|
||||||
_skipped = true;
|
|
||||||
internal::taskEnd(domain());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OV_ITT_DOMAIN(domainName)
|
* @def OV_ITT_DOMAIN(domainName)
|
||||||
* @ingroup ov_dev_profiling
|
* @ingroup ov_dev_profiling
|
||||||
* @brief Declare domain with a given name.
|
* @brief Declare domain with a given name.
|
||||||
* @param domainName [in] Known at compile time name of module or library (the domain name).
|
* @param domainName [in] Known at compile time name of module or library (the domain name).
|
||||||
* @param domainDisplayName [in] Domain name used as the ITT counter name and displayed in Intel VTune. Parameter is optional.
|
* @param domainDisplayName [in] Domain name used as the ITT counter name and displayed in Intel VTune. Parameter is
|
||||||
|
* optional.
|
||||||
*/
|
*/
|
||||||
#define OV_ITT_DOMAIN(...) OV_PP_OVERLOAD(OV_ITT_DOMAIN, __VA_ARGS__)
|
#define OV_ITT_DOMAIN(...) OV_PP_OVERLOAD(OV_ITT_DOMAIN, __VA_ARGS__)
|
||||||
|
|
||||||
@ -226,19 +212,17 @@ namespace openvino
|
|||||||
* @cond
|
* @cond
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define OV_ITT_DOMAIN_1(domainName) \
|
#define OV_ITT_DOMAIN_1(domainName) \
|
||||||
inline openvino::itt::domain_t domainName() noexcept \
|
inline openvino::itt::domain_t domainName() noexcept { \
|
||||||
{ \
|
static auto d = openvino::itt::internal::domain(#domainName); \
|
||||||
static auto d = openvino::itt::internal::domain(#domainName); \
|
return d; \
|
||||||
return d; \
|
}
|
||||||
}
|
|
||||||
|
|
||||||
#define OV_ITT_DOMAIN_2(domainName, domainDisplayName) \
|
#define OV_ITT_DOMAIN_2(domainName, domainDisplayName) \
|
||||||
inline openvino::itt::domain_t domainName() noexcept \
|
inline openvino::itt::domain_t domainName() noexcept { \
|
||||||
{ \
|
static auto d = openvino::itt::internal::domain(domainDisplayName); \
|
||||||
static auto d = openvino::itt::internal::domain(domainDisplayName); \
|
return d; \
|
||||||
return d; \
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @endcond
|
* @endcond
|
||||||
@ -253,7 +237,7 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
* @param domainName [in] Known at compile time name of module or library (the domain name).
|
* @param domainName [in] Known at compile time name of module or library (the domain name).
|
||||||
* @param handleOrTaskName [in] The annotation name or handle for section of code. Parameter is optional.
|
* @param handleOrTaskName [in] The annotation name or handle for section of code. Parameter is optional.
|
||||||
*/
|
*/
|
||||||
#define OV_ITT_SCOPE(group, ...) \
|
#define OV_ITT_SCOPE(group, ...) \
|
||||||
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -263,13 +247,13 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
#define OV_ITT_SCOPE_IMPL_0(...)
|
#define OV_ITT_SCOPE_IMPL_0(...)
|
||||||
#define OV_ITT_SCOPE_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE, __VA_ARGS__)
|
#define OV_ITT_SCOPE_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE, __VA_ARGS__)
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_1(domain) \
|
#define OV_ITT_SCOPE_1(domain) \
|
||||||
openvino::itt::ScopedTask<domain> OV_PP_CAT(ittScopedTask, __LINE__) \
|
openvino::itt::ScopedTask<domain> OV_PP_CAT(ittScopedTask, __LINE__)( \
|
||||||
(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(ITT_FUNCTION_NAME));
|
openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(ITT_FUNCTION_NAME));
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_2(domain, taskOrTaskName) \
|
#define OV_ITT_SCOPE_2(domain, taskOrTaskName) \
|
||||||
openvino::itt::ScopedTask<domain> OV_PP_CAT(ittScopedTask, __LINE__) \
|
openvino::itt::ScopedTask<domain> OV_PP_CAT(ittScopedTask, __LINE__)( \
|
||||||
(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(taskOrTaskName));
|
openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(taskOrTaskName));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @endcond
|
* @endcond
|
||||||
@ -297,7 +281,7 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
* @param prefix [in] The task chain name prefix. The task name starts with this prefix. Parameter is optional.
|
* @param prefix [in] The task chain name prefix. The task name starts with this prefix. Parameter is optional.
|
||||||
* @param taskName [in] The annotation name for section of code. Parameter is optional.
|
* @param taskName [in] The annotation name for section of code. Parameter is optional.
|
||||||
*/
|
*/
|
||||||
#define OV_ITT_SCOPE_CHAIN(group, ...) \
|
#define OV_ITT_SCOPE_CHAIN(group, ...) \
|
||||||
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_CHAIN_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_CHAIN_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -307,23 +291,20 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
#define OV_ITT_SCOPE_CHAIN_IMPL_0(...)
|
#define OV_ITT_SCOPE_CHAIN_IMPL_0(...)
|
||||||
#define OV_ITT_SCOPE_CHAIN_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE_CHAIN, __VA_ARGS__)
|
#define OV_ITT_SCOPE_CHAIN_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE_CHAIN, __VA_ARGS__)
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_CHAIN_2(chainId, domain) \
|
#define OV_ITT_SCOPE_CHAIN_2(chainId, domain) \
|
||||||
openvino::itt::TaskChain<domain> chainId \
|
openvino::itt::TaskChain<domain> chainId( \
|
||||||
(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)> \
|
openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(std::string(ITT_FUNCTION_NAME) + "_1"), \
|
||||||
(std::string(ITT_FUNCTION_NAME) + "_1"), \
|
ITT_FUNCTION_NAME);
|
||||||
ITT_FUNCTION_NAME);
|
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_CHAIN_3(chainId, domain, prefix) \
|
#define OV_ITT_SCOPE_CHAIN_3(chainId, domain, prefix) \
|
||||||
openvino::itt::TaskChain<domain> chainId \
|
openvino::itt::TaskChain<domain> chainId( \
|
||||||
(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)> \
|
openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(std::string(prefix) + "_1"), \
|
||||||
(std::string(prefix) + "_1"), \
|
prefix);
|
||||||
prefix);
|
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_CHAIN_4(chainId, domain, prefix, taskName) \
|
#define OV_ITT_SCOPE_CHAIN_4(chainId, domain, prefix, taskName) \
|
||||||
openvino::itt::TaskChain<domain> chainId \
|
openvino::itt::TaskChain<domain> chainId( \
|
||||||
(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)> \
|
openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(std::string(prefix) + "_" + taskName), \
|
||||||
(std::string(prefix) + "_" + taskName), \
|
prefix);
|
||||||
prefix);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @endcond
|
* @endcond
|
||||||
@ -338,7 +319,7 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
* @param chainId [in] The tasks chain identifier.
|
* @param chainId [in] The tasks chain identifier.
|
||||||
* @param taskOrTaskName [in] The annotation name or handle for section of code. Parameter is optional.
|
* @param taskOrTaskName [in] The annotation name or handle for section of code. Parameter is optional.
|
||||||
*/
|
*/
|
||||||
#define OV_ITT_SCOPE_NEXT(group, ...) \
|
#define OV_ITT_SCOPE_NEXT(group, ...) \
|
||||||
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_NEXT_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_NEXT_IMPL_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(__VA_ARGS__))
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -348,11 +329,11 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
#define OV_ITT_SCOPE_NEXT_IMPL_0(...)
|
#define OV_ITT_SCOPE_NEXT_IMPL_0(...)
|
||||||
#define OV_ITT_SCOPE_NEXT_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE_NEXT, __VA_ARGS__)
|
#define OV_ITT_SCOPE_NEXT_IMPL_1(...) OV_PP_OVERLOAD(OV_ITT_SCOPE_NEXT, __VA_ARGS__)
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_NEXT_1(chainId) \
|
#define OV_ITT_SCOPE_NEXT_1(chainId) \
|
||||||
chainId.next(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(chainId.taskName()));
|
chainId.next(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(chainId.taskName()));
|
||||||
|
|
||||||
#define OV_ITT_SCOPE_NEXT_2(chainId, taskOrTaskName) \
|
#define OV_ITT_SCOPE_NEXT_2(chainId, taskOrTaskName) \
|
||||||
chainId.next(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(chainId.taskNameOrHandle(taskOrTaskName)));
|
chainId.next(openvino::itt::handle<struct OV_PP_CAT(Task, __LINE__)>(chainId.taskNameOrHandle(taskOrTaskName)));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @endcond
|
* @endcond
|
||||||
@ -365,7 +346,7 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
* @param group [in] ITT counter group name used for enabling/disabling at compile time.
|
* @param group [in] ITT counter group name used for enabling/disabling at compile time.
|
||||||
* @param chainId [in] The tasks chain identifier.
|
* @param chainId [in] The tasks chain identifier.
|
||||||
*/
|
*/
|
||||||
#define OV_ITT_SCOPE_SKIP(group, chainId) \
|
#define OV_ITT_SCOPE_SKIP(group, chainId) \
|
||||||
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_SKIP_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(chainId))
|
OV_PP_EXPAND(OV_PP_CAT(OV_ITT_SCOPE_SKIP_, OV_PP_IS_ENABLED(OV_ITT_GROUP(group)))(chainId))
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -410,5 +391,5 @@ inline openvino::itt::domain_t domainName() noexcept
|
|||||||
*/
|
*/
|
||||||
#define OV_ITT_TASK_SKIP(chainId) OV_ITT_SCOPE_SKIP(ALL, chainId);
|
#define OV_ITT_TASK_SKIP(chainId) OV_ITT_SCOPE_SKIP(ALL, chainId);
|
||||||
|
|
||||||
} // namespace itt
|
} // namespace itt
|
||||||
} // namespace openvino
|
} // namespace openvino
|
||||||
|
Loading…
Reference in New Issue
Block a user