24#define KMP_ITT_DEBUG_LOCK() \
25 { __kmp_acquire_bootstrap_lock(&__kmp_itt_debug_lock); }
26#define KMP_ITT_DEBUG_PRINT(...) \
28 fprintf(stderr, "#%02d: ", __kmp_get_gtid()); \
29 fprintf(stderr, __VA_ARGS__); \
31 __kmp_release_bootstrap_lock(&__kmp_itt_debug_lock); \
34#define KMP_ITT_DEBUG_LOCK()
35#define KMP_ITT_DEBUG_PRINT(...)
44#define LINKAGE static inline
51#ifdef __INTEL_COMPILER
52#if __INTEL_COMPILER >= 1200
53#undef __itt_sync_acquired
54#undef __itt_sync_releasing
55#define __itt_sync_acquired(addr) \
56 __notify_zc_intrinsic((char *)"sync_acquired", addr)
57#define __itt_sync_releasing(addr) \
58 __notify_intrinsic((char *)"sync_releasing", addr)
68 return ((
addr >> 6) ^ (
addr >> 2)) % hsize;
70LINKAGE kmp_itthash_entry *__kmp_itthash_find(
kmp_info_t *thread,
73 kmp_itthash_entry_t *entry;
74 size_t bucket = __kmp_itthash_hash((
kmp_intptr_t)
loc, KMP_MAX_FRAME_DOMAINS);
75 for (entry =
h->buckets[bucket]; entry; entry = entry->next_in_bucket)
76 if (entry->loc ==
loc && entry->team_size == team_size)
82 if (cnt >= KMP_MAX_FRAME_DOMAINS) {
88 thread,
sizeof(kmp_itthash_entry_t));
90 entry->team_size = team_size;
92 entry->next_in_bucket =
h->buckets[bucket];
94 entry->next_in_bucket, entry)) {
96 entry->next_in_bucket =
h->buckets[bucket];
126LINKAGE
void __kmp_itt_region_forking(
int gtid,
int team_size,
int barriers) {
129 if (team->
t.t_active_level > 1) {
139 kmp_itthash_entry *e;
140 e = __kmp_itthash_find(th, &__kmp_itt_region_domains,
loc, team_size);
151 team_size, str_loc.
file, str_loc.
line, str_loc.
col);
153 __itt_suppress_push(__itt_suppress_memory_errors);
156 __itt_suppress_pop();
160 kmp_itthash_entry *e;
161 e = __kmp_itthash_find(th, &__kmp_itt_barrier_domains,
loc, 0);
167 __itt_suppress_push(__itt_suppress_memory_errors);
170 __itt_suppress_pop();
176 __itt_frame_begin_v3(e->d, NULL);
177 KMP_ITT_DEBUG_LOCK();
178 KMP_ITT_DEBUG_PRINT(
"[frm beg] gtid=%d, domain=%p, loc:%p\n", gtid, e->d,
184LINKAGE
void __kmp_itt_frame_submit(
int gtid, __itt_timestamp
begin,
185 __itt_timestamp
end,
int imbalance,
195 int serialized = (region == 2 ? 1 : 0);
196 if (team->
t.t_active_level + serialized > 1) {
201 kmp_itthash_entry *e;
202 e = __kmp_itthash_find(th, &__kmp_itt_region_domains,
loc, team_size);
214 team_size, str_loc.
file, str_loc.
line, str_loc.
col);
215 __itt_suppress_push(__itt_suppress_memory_errors);
218 __itt_suppress_pop();
223 __itt_frame_submit_v3(e->d, NULL,
begin,
end);
224 KMP_ITT_DEBUG_LOCK();
226 "[reg sub] gtid=%d, domain=%p, region:%d, loc:%p, beg:%llu, end:%llu\n",
230 kmp_itthash_entry *e;
231 e = __kmp_itthash_find(th, &__kmp_itt_barrier_domains,
loc, 0);
244 team_size, str_loc.
file, str_loc.
line);
249 __itt_suppress_push(__itt_suppress_memory_errors);
252 __itt_suppress_pop();
256 __itt_frame_submit_v3(e->d, NULL,
begin,
end);
257 KMP_ITT_DEBUG_LOCK();
259 "[frm sub] gtid=%d, domain=%p, loc:%p, beg:%llu, end:%llu\n", gtid,
270 if (metadata_domain == NULL) {
272 if (metadata_domain == NULL) {
273 __itt_suppress_push(__itt_suppress_memory_errors);
278 __itt_suppress_pop();
284 imbalance_data[0] =
begin;
285 imbalance_data[1] =
end;
286 imbalance_data[2] = imbalance;
287 imbalance_data[3] = reduction;
298 if (metadata_domain == NULL) {
300 if (metadata_domain == NULL) {
301 __itt_suppress_push(__itt_suppress_memory_errors);
306 __itt_suppress_pop();
319 loop_data[3] = iterations;
320 loop_data[4] = chunk;
328LINKAGE
void __kmp_itt_metadata_single(
ident_t *
loc) {
330 if (metadata_domain == NULL) {
332 if (metadata_domain == NULL) {
333 __itt_suppress_push(__itt_suppress_memory_errors);
338 __itt_suppress_pop();
346 single_data[0] = line;
347 single_data[1] = col;
355LINKAGE
void __kmp_itt_region_starting(
int gtid) {
361LINKAGE
void __kmp_itt_region_finished(
int gtid) {
367LINKAGE
void __kmp_itt_region_joined(
int gtid) {
370 if (team->
t.t_active_level > 1) {
377 kmp_itthash_entry *e = __kmp_itthash_find(th, &__kmp_itt_region_domains,
378 loc, th->th.th_team_nproc);
382 KMP_ITT_DEBUG_LOCK();
383 __itt_frame_end_v3(e->d, NULL);
384 KMP_ITT_DEBUG_PRINT(
"[frm end] gtid=%d, domain=%p, loc:%p\n", gtid, e->d,
417void *__kmp_itt_barrier_object(
int gtid,
int bt,
int set_name,
443 object =
reinterpret_cast<void *
>(
448 KMP_ITT_DEBUG_LOCK();
449 KMP_ITT_DEBUG_PRINT(
"[bar obj] type=%d, counter=%lld, object=%p\n", bt,
454 char const *src = NULL;
455 char const *
type =
"OMP Barrier";
460 loc = thr->th.th_ident;
472 type =
"OMP For Barrier";
475 type =
"OMP Sections Barrier";
478 type =
"OMP Single Barrier";
481 type =
"OMP Workshare Barrier";
484 type =
"OMP Implicit Barrier";
489 type =
"OMP Explicit Barrier";
502 loc = team->
t.t_ident;
506 type =
"OMP Join Barrier";
509 KMP_ITT_DEBUG_LOCK();
512 "[bar sta] scre( %p, \"%s\", \"%s\", __itt_attr_barrier )\n",
object,
521void __kmp_itt_barrier_starting(
int gtid,
void *
object) {
524 KMP_ITT_DEBUG_LOCK();
525 __itt_sync_releasing(
object);
526 KMP_ITT_DEBUG_PRINT(
"[bar sta] srel( %p )\n",
object);
528 KMP_ITT_DEBUG_LOCK();
529 __itt_sync_prepare(
object);
530 KMP_ITT_DEBUG_PRINT(
"[bar sta] spre( %p )\n",
object);
535void __kmp_itt_barrier_middle(
int gtid,
void *
object) {
538 KMP_ITT_DEBUG_LOCK();
539 __itt_sync_acquired(
object);
540 KMP_ITT_DEBUG_PRINT(
"[bar mid] sacq( %p )\n",
object);
541 KMP_ITT_DEBUG_LOCK();
542 __itt_sync_releasing(
object);
543 KMP_ITT_DEBUG_PRINT(
"[bar mid] srel( %p )\n",
object);
550void __kmp_itt_barrier_finished(
int gtid,
void *
object) {
554 KMP_ITT_DEBUG_LOCK();
555 __itt_sync_acquired(
object);
556 KMP_ITT_DEBUG_PRINT(
"[bar end] sacq( %p )\n",
object);
565void *__kmp_itt_taskwait_object(
int gtid) {
568 if (
UNLIKELY(__itt_sync_create_ptr)) {
579void __kmp_itt_taskwait_starting(
int gtid,
void *
object) {
585 KMP_ITT_DEBUG_LOCK();
586 __itt_sync_create(
object,
"OMP Taskwait", src, 0);
587 KMP_ITT_DEBUG_PRINT(
"[twa sta] scre( %p, \"OMP Taskwait\", \"%s\", 0 )\n",
589 KMP_ITT_DEBUG_LOCK();
590 __itt_sync_prepare(
object);
591 KMP_ITT_DEBUG_PRINT(
"[twa sta] spre( %p )\n",
object);
595void __kmp_itt_taskwait_finished(
int gtid,
void *
object) {
597 KMP_ITT_DEBUG_LOCK();
598 __itt_sync_acquired(
object);
599 KMP_ITT_DEBUG_PRINT(
"[twa end] sacq( %p )\n",
object);
600 KMP_ITT_DEBUG_LOCK();
601 __itt_sync_destroy(
object);
602 KMP_ITT_DEBUG_PRINT(
"[twa end] sdes( %p )\n",
object);
611void __kmp_itt_task_starting(
616 KMP_ITT_DEBUG_LOCK();
617 __itt_sync_cancel(
object);
618 KMP_ITT_DEBUG_PRINT(
"[tsk sta] scan( %p )\n",
object);
624void __kmp_itt_task_finished(
628 KMP_ITT_DEBUG_LOCK();
629 __itt_sync_prepare(
object);
630 KMP_ITT_DEBUG_PRINT(
"[tsk end] spre( %p )\n",
object);
649#if KMP_USE_DYNAMIC_LOCK
654 if (__itt_sync_create_ptr) {
656 KMP_ITT_DEBUG_LOCK();
657 __itt_sync_create(
lock,
type, src, 0);
658 KMP_ITT_DEBUG_PRINT(
"[lck ini] scre( %p, \"%s\", \"%s\", 0 )\n",
lock,
type,
668 if (__itt_sync_create_ptr) {
673 KMP_ITT_DEBUG_LOCK();
674 __itt_sync_create(
lock,
type, src, 0);
675 KMP_ITT_DEBUG_PRINT(
"[lck ini] scre( %p, \"%s\", \"%s\", 0 )\n",
lock,
type,
686 KMP_ITT_DEBUG_LOCK();
687 __itt_sync_destroy(
lock);
688 KMP_ITT_DEBUG_PRINT(
"[lck dst] sdes( %p )\n",
lock);
693#if KMP_USE_DYNAMIC_LOCK
695 ___kmp_itt_lock_init(
lock,
"OMP Lock",
loc);
699 ___kmp_itt_lock_init(
lock,
"OMP Lock");
704#if KMP_USE_DYNAMIC_LOCK && USE_ITT_NOTIFY
706 if (__itt_sync_prepare_ptr) {
707 if (KMP_EXTRACT_D_TAG(
lock) == 0) {
708 kmp_indirect_lock_t *ilk = KMP_LOOKUP_I_LOCK(
lock);
709 __itt_sync_prepare(ilk->lock);
711 __itt_sync_prepare(
lock);
715 __itt_sync_prepare(
lock);
720#if KMP_USE_DYNAMIC_LOCK && USE_ITT_NOTIFY
722 if (__itt_sync_acquired_ptr) {
723 if (KMP_EXTRACT_D_TAG(
lock) == 0) {
724 kmp_indirect_lock_t *ilk = KMP_LOOKUP_I_LOCK(
lock);
725 __itt_sync_acquired(ilk->lock);
727 __itt_sync_acquired(
lock);
731 __itt_sync_acquired(
lock);
736#if KMP_USE_DYNAMIC_LOCK && USE_ITT_NOTIFY
737 if (__itt_sync_releasing_ptr) {
738 if (KMP_EXTRACT_D_TAG(
lock) == 0) {
739 kmp_indirect_lock_t *ilk = KMP_LOOKUP_I_LOCK(
lock);
740 __itt_sync_releasing(ilk->lock);
742 __itt_sync_releasing(
lock);
746 __itt_sync_releasing(
lock);
751#if KMP_USE_DYNAMIC_LOCK && USE_ITT_NOTIFY
752 if (__itt_sync_cancel_ptr) {
753 if (KMP_EXTRACT_D_TAG(
lock) == 0) {
754 kmp_indirect_lock_t *ilk = KMP_LOOKUP_I_LOCK(
lock);
755 __itt_sync_cancel(ilk->lock);
757 __itt_sync_cancel(
lock);
761 __itt_sync_cancel(
lock);
766 ___kmp_itt_lock_fini(
lock,
"OMP Lock");
772#if KMP_USE_DYNAMIC_LOCK
774 ___kmp_itt_lock_init(
lock,
"OMP Critical",
loc);
778 ___kmp_itt_lock_init(
lock,
"OMP Critical");
783 __itt_sync_prepare(
lock);
787 __itt_sync_acquired(
lock);
791 __itt_sync_releasing(
lock);
795 ___kmp_itt_lock_fini(
lock,
"OMP Critical");
800void __kmp_itt_single_start(
int gtid) {
802 if (__itt_mark_create_ptr || KMP_ITT_DEBUG) {
809 KMP_ITT_DEBUG_LOCK();
810 thr->th.th_itt_mark_single = __itt_mark_create(
name.str);
811 KMP_ITT_DEBUG_PRINT(
"[sin sta] mcre( \"%s\") -> %d\n",
name.str,
812 thr->th.th_itt_mark_single);
814 KMP_ITT_DEBUG_LOCK();
815 __itt_mark(thr->th.th_itt_mark_single, NULL);
816 KMP_ITT_DEBUG_PRINT(
"[sin sta] mark( %d, NULL )\n",
817 thr->th.th_itt_mark_single);
822void __kmp_itt_single_end(
int gtid) {
825 KMP_ITT_DEBUG_LOCK();
826 __itt_mark_off(mark);
827 KMP_ITT_DEBUG_PRINT(
"[sin end] moff( %d )\n", mark);
844void __kmp_itt_ordered_init(
int gtid) {
846 if (__itt_sync_create_ptr) {
850 __itt_sync_create(thr->th.th_dispatch->th_dispatch_sh_current,
851 "OMP Ordered", src, 0);
856void __kmp_itt_ordered_prep(
int gtid) {
858 if (__itt_sync_create_ptr) {
860 if (!t->
t.t_serialized) {
862 __itt_sync_prepare(th->th.th_dispatch->th_dispatch_sh_current);
868void __kmp_itt_ordered_start(
int gtid) {
870 if (__itt_sync_create_ptr) {
872 if (!t->
t.t_serialized) {
874 __itt_sync_acquired(th->th.th_dispatch->th_dispatch_sh_current);
880void __kmp_itt_ordered_end(
int gtid) {
882 if (__itt_sync_create_ptr) {
884 if (!t->
t.t_serialized) {
886 __itt_sync_releasing(th->th.th_dispatch->th_dispatch_sh_current);
894void __kmp_itt_thread_ignore() {
898void __kmp_itt_thread_name(
int gtid) {
908 KMP_ITT_DEBUG_LOCK();
910 KMP_ITT_DEBUG_PRINT(
"[thr nam] name( \"%s\")\n",
name.str);
922void __kmp_itt_system_object_created(
void *
object,
char const *
name) {
924 KMP_ITT_DEBUG_LOCK();
925 __itt_sync_create(
object,
"OMP Scheduler",
name, 0);
926 KMP_ITT_DEBUG_PRINT(
"[sys obj] scre( %p, \"OMP Scheduler\", \"%s\", 0 )\n",
936__itt_caller __kmp_itt_stack_caller_create() {
938 if (!__itt_stack_caller_create_ptr)
940 KMP_ITT_DEBUG_LOCK();
941 __itt_caller
id = __itt_stack_caller_create();
942 KMP_ITT_DEBUG_PRINT(
"[stk cre] %p\n",
id);
948void __kmp_itt_stack_caller_destroy(__itt_caller
id) {
950 if (__itt_stack_caller_destroy_ptr) {
951 KMP_ITT_DEBUG_LOCK();
952 __itt_stack_caller_destroy(
id);
953 KMP_ITT_DEBUG_PRINT(
"[stk des] %p\n",
id);
958void __kmp_itt_stack_callee_enter(__itt_caller
id) {
960 if (__itt_stack_callee_enter_ptr) {
961 KMP_ITT_DEBUG_LOCK();
962 __itt_stack_callee_enter(
id);
963 KMP_ITT_DEBUG_PRINT(
"[stk ent] %p\n",
id);
968void __kmp_itt_stack_callee_leave(__itt_caller
id) {
970 if (__itt_stack_callee_leave_ptr) {
971 KMP_ITT_DEBUG_LOCK();
972 __itt_stack_callee_leave(
id);
973 KMP_ITT_DEBUG_PRINT(
"[stk lea] %p\n",
id);
@ KMP_IDENT_BARRIER_IMPL_FOR
@ KMP_IDENT_BARRIER_IMPL_MASK
@ KMP_IDENT_BARRIER_IMPL_SECTIONS
@ KMP_IDENT_BARRIER_IMPL_WORKSHARE
@ KMP_IDENT_BARRIER_IMPL
To Mark implicit barriers.
@ KMP_IDENT_BARRIER_IMPL_SINGLE
@ KMP_IDENT_BARRIER_EXPL
To mark a 'barrier' directive in user code.
sched_type
Describes the loop schedule to be used for a parallel for loop.
__itt_string_handle * name
#define __itt_domain_create
#define __itt_string_handle_create
static const __itt_id __itt_null
#define __itt_attr_barrier
possible value of attribute argument for sync object type
#define __itt_thr_name_set
#define __itt_thr_name_set_ptr
void LIBITTAPI __itt_thr_ignore(void)
Mark current thread as ignored from this point on, for the duration of its existence.
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp end
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp begin
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function h
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_id __itt_string_handle __itt_metadata_type type
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_id __itt_string_handle __itt_metadata_type size_t void ITT_FORMAT p const __itt_domain __itt_id __itt_string_handle const wchar_t size_t ITT_FORMAT lu const __itt_domain __itt_id __itt_relation __itt_id ITT_FORMAT p const wchar_t int ITT_FORMAT __itt_group_mark d __itt_event ITT_FORMAT __itt_group_mark d void const wchar_t const wchar_t int ITT_FORMAT __itt_group_sync __itt_group_fsync x void const wchar_t int const wchar_t int int ITT_FORMAT __itt_group_sync __itt_group_fsync x void ITT_FORMAT __itt_group_sync __itt_group_fsync p void ITT_FORMAT __itt_group_sync __itt_group_fsync p void size_t ITT_FORMAT lu no args __itt_obj_prop_t __itt_obj_state_t ITT_FORMAT d const char ITT_FORMAT s const char ITT_FORMAT s __itt_frame ITT_FORMAT p __itt_counter ITT_FORMAT p __itt_counter unsigned long long ITT_FORMAT lu __itt_counter unsigned long long ITT_FORMAT lu __itt_counter __itt_clock_domain unsigned long long void ITT_FORMAT p __itt_mark_type
static kmp_team_t * __kmp_team_from_gtid(int gtid)
#define __kmp_thread_malloc(th, size)
#define KMP_MASTER_GTID(gtid)
static kmp_info_t * __kmp_thread_from_gtid(int gtid)
#define KMP_BARRIER_STATE_BUMP
struct kmp_taskdata kmp_taskdata_t
union KMP_ALIGN_CACHE kmp_info kmp_info_t
#define KMP_BUILD_ASSERT(expr)
#define KMP_DEBUG_ASSERT(cond)
unsigned long long kmp_uint64
static kmp_bootstrap_lock_t lock
const ident_t *(* __kmp_get_user_lock_location_)(kmp_user_lock_p lck)
static void __kmp_release_bootstrap_lock(kmp_bootstrap_lock_t *lck)
static int __kmp_acquire_bootstrap_lock(kmp_bootstrap_lock_t *lck)
#define KMP_BOOTSTRAP_LOCK_INITIALIZER(lock)
#define KMP_TEST_THEN_INC32(p)
#define KMP_TEST_THEN_DEC32(p)
unsigned long kmp_uintptr_t
#define KMP_COMPARE_AND_STORE_PTR(p, cv, sv)
void __kmp_str_loc_numbers(char const *Psource, int *LineBeg, int *LineEndOrCol)
kmp_str_loc_t __kmp_str_loc_init(char const *psource, bool init_fname)
void __kmp_str_buf_free(kmp_str_buf_t *buffer)
char * __kmp_str_format(char const *format,...)
void __kmp_str_loc_free(kmp_str_loc_t *loc)
int __kmp_str_buf_print(kmp_str_buf_t *buffer, char const *format,...)
void __kmp_str_free(char **str)
#define __kmp_str_buf_init(b)
kmp_uint32 td_taskwait_counter
ident_t * td_taskwait_ident