17 #ifndef _TBB_ITT_NOTIFY
18 #define _TBB_ITT_NOTIFY
30 #ifndef INTEL_ITTNOTIFY_API_PRIVATE
31 #define INTEL_ITTNOTIFY_API_PRIVATE
36 extern "C" void __itt_fini_ittlib(
void);
45 #define ITT_CALLER_NULL ((__itt_caller)0)
50 #if (_WIN32||_WIN64) && !__MINGW32__
53 typedef wchar_t tchar;
55 #define _T(string_literal) L ## string_literal
59 #define _T(string_literal) string_literal
71 *SyncObj_SchedulerInitialization,
72 *SyncObj_SchedulersList,
73 *SyncObj_WorkerLifeCycleMgmt,
74 *SyncObj_TaskStealingLoop,
75 *SyncObj_WorkerTaskPool,
76 *SyncObj_MasterTaskPool,
77 *SyncObj_TaskPoolSpinning,
79 *SyncObj_TaskReturnList,
81 #if __TBB_PREVIEW_CRITICAL_TASKS
82 *SyncObj_CriticalTaskStream,
94 #define ITT_NOTIFY(name,obj) __itt_##name(const_cast<void*>(static_cast<volatile void*>(obj)))
95 #define ITT_THREAD_SET_NAME(name) __itt_thread_set_name(name)
96 #define ITT_FINI_ITTLIB() __itt_fini_ittlib()
97 #define ITT_SYNC_CREATE(obj, type, name) __itt_sync_create((void*)(obj), type, name, 2)
98 #define ITT_SYNC_RENAME(obj, name) __itt_sync_rename(obj, name)
99 #define ITT_STACK_CREATE(obj) obj = __itt_stack_caller_create()
100 #if __TBB_TASK_GROUP_CONTEXT
101 #define ITT_STACK(precond, name, obj) (precond) ? __itt_stack_##name(obj) : ((void)0);
103 #define ITT_STACK(precond, name, obj) ((void)0)
106 #define ITT_TASK_GROUP(obj,name,parent) itt_make_task_group_v7(internal::ITT_DOMAIN_MAIN,(void*)(obj),ALGORITHM,(void*)(parent),(parent!=NULL) ? ALGORITHM : FLOW_NULL,name)
107 #define ITT_TASK_BEGIN(obj,name,id) itt_task_begin_v7(internal::ITT_DOMAIN_MAIN,(void*)(id),ALGORITHM,(void*)(obj),ALGORITHM,name)
108 #define ITT_TASK_END itt_task_end_v7(internal::ITT_DOMAIN_MAIN)
112 #define ITT_NOTIFY(name,obj) ((void)0)
113 #define ITT_THREAD_SET_NAME(name) ((void)0)
114 #define ITT_FINI_ITTLIB() ((void)0)
115 #define ITT_SYNC_CREATE(obj, type, name) ((void)0)
116 #define ITT_SYNC_RENAME(obj, name) ((void)0)
117 #define ITT_STACK_CREATE(obj) ((void)0)
118 #define ITT_STACK(precond, name, obj) ((void)0)
120 #define ITT_TASK_GROUP(type,name,parent) ((void)0)
121 #define ITT_TASK_BEGIN(type,name,id) ((void)0)
122 #define ITT_TASK_END ((void)0)
#define __TBB_EXPORTED_FUNC
void const char const char int ITT_FORMAT __itt_group_sync x void const char * name
char tchar
Unicode support.
int __TBB_load_ittnotify()
void itt_set_sync_name_v3(void *obj, const tchar *name)
Legacy User API functions and types.