Defines API to trace using Intel ITT. More...
#include <openvino/function_name.hpp>
#include <openvino/macro_overload.hpp>
#include <string>
#include <utility>
Go to the source code of this file.
Data Structures | |
struct | openvino::itt::domain_ |
struct | openvino::itt::handle_ |
class | openvino::itt::ScopedTask< domain > |
Used to annotate section of code which would be named at runtime. More... | |
class | openvino::itt::TaskChain< domain > |
Used to annotate a sequence of sections of code which would be named at runtime. More... | |
Macros | |
#define | OV_ITT_DOMAIN(...) OV_ITT_MACRO_OVERLOAD(OV_ITT_DOMAIN, __VA_ARGS__) |
Declare domain with a given name. More... | |
#define | OV_ITT_SCOPED_TASK(...) OV_ITT_MACRO_OVERLOAD(OV_ITT_SCOPED_TASK, __VA_ARGS__) |
Annotate section of code till scope exit to be profiled using known handle or taskName as section id. More... | |
#define | OV_ITT_TASK_CHAIN(...) OV_ITT_MACRO_OVERLOAD(OV_ITT_TASK_CHAIN, __VA_ARGS__) |
Begins the sequrence of an annotated sections of code using prefix and taskName as section id. More... | |
#define | OV_ITT_TASK_NEXT(...) OV_ITT_MACRO_OVERLOAD(OV_ITT_TASK_NEXT, __VA_ARGS__) |
Inserts new annotated section of code to tasks chain using taskName as section id. More... | |
#define | OV_ITT_TASK_SKIP(chainId) chainId.skip(); |
Skips the remaining task scope. More... | |
Typedefs | |
typedef struct openvino::itt::domain_ * | openvino::itt::domain_t |
A domain type which enables tagging trace data for different modules or libraries in a program. | |
typedef struct openvino::itt::handle_ * | openvino::itt::handle_t |
Annotation handle for section of code which would be named at runtime. | |
Functions | |
void | openvino::itt::threadName (const char *name) |
Set thread name using a char string. More... | |
void | openvino::itt::threadName (const std::string &name) |
handle_t | openvino::itt::handle (char const *name) |
Create annotation handle with a given name. More... | |
handle_t | openvino::itt::handle (const std::string &name) |
template<typename Tag > | |
handle_t | openvino::itt::handle (handle_t h) |
Defines API to trace using Intel ITT.
#define OV_ITT_DOMAIN | ( | ... | ) | OV_ITT_MACRO_OVERLOAD(OV_ITT_DOMAIN, __VA_ARGS__) |
Declare domain with a given name.
domainName | [in] Known at compile time name of module or library (the domain name). |
domainDisplayName | [in] Domain name used as the ITT counter name and displayed in Intel VTune. Parameter is optional. |
#define OV_ITT_SCOPED_TASK | ( | ... | ) | OV_ITT_MACRO_OVERLOAD(OV_ITT_SCOPED_TASK, __VA_ARGS__) |
Annotate section of code till scope exit to be profiled using known handle
or taskName
as section id.
In case if handle or taskName absent, the current function name is used.
domainName | [in] Known at compile time name of module or library (the domain name). |
handleOrTaskName | [in] The annotation name or handle for section of code. Parameter is optional. |
#define OV_ITT_TASK_CHAIN | ( | ... | ) | OV_ITT_MACRO_OVERLOAD(OV_ITT_TASK_CHAIN, __VA_ARGS__) |
Begins the sequrence of an annotated sections of code using prefix
and taskName
as section id.
In case if prefix absent, the current function name is used, if taskName absent, the first chain index is used, i.e 1.
chainId | [in] The tasks chain identifier. |
domainName | [in] Known at compile time name of module or library (the domain name). |
prefix | [in] The task chain name prefix. The task name starts with this prefix. Parameter is optional. |
taskName | [in] The annotation name for section of code. Parameter is optional. |
#define OV_ITT_TASK_NEXT | ( | ... | ) | OV_ITT_MACRO_OVERLOAD(OV_ITT_TASK_NEXT, __VA_ARGS__) |
Inserts new annotated section of code to tasks chain using taskName
as section id.
If taskName is missing, the current chain index is used.
chainId | [in] The tasks chain identifier. |
taskOrTaskName | [in] The annotation name or handle for section of code. Parameter is optional. |
#define OV_ITT_TASK_SKIP | ( | chainId | ) | chainId.skip(); |
Skips the remaining task scope.
chainId | [in] The tasks chain identifier. |
|
inline |
Create annotation handle with a given name.
If template function is instantiated with a tag, the handle is created as a singleton.
name | [in] The annotation name |
|
inline |
Set thread name using a char string.
name | [in] The thread name |