1 #ifndef __OMPT_INTERNAL_H__ 2 #define __OMPT_INTERNAL_H__ 4 #include "ompt-event-specific.h" 9 #define _OMP_EXTERN extern "C" 11 #define OMPT_INVOKER(x) \ 12 ((x == fork_context_gnu) ? ompt_invoker_program : ompt_invoker_runtime) 14 #define ompt_callback(e) e##_callback 16 typedef struct ompt_callbacks_s {
17 #define ompt_event_macro(event, callback, eventid) \ 18 callback ompt_callback(event); 20 FOREACH_OMPT_EVENT(ompt_event_macro)
22 #undef ompt_event_macro 28 ompt_task_id_t task_id;
31 ompt_task_dependence_t *deps;
36 ompt_parallel_id_t parallel_id;
40 typedef struct ompt_lw_taskteam_s {
41 ompt_team_info_t ompt_team_info;
42 ompt_task_info_t ompt_task_info;
43 struct ompt_lw_taskteam_s *parent;
46 typedef struct ompt_parallel_info_s {
47 ompt_task_id_t parent_task_id;
48 ompt_parallel_id_t parallel_id;
49 ompt_frame_t *parent_task_frame;
50 void *parallel_function;
51 } ompt_parallel_info_t;
55 ompt_wait_id_t wait_id;
59 extern ompt_callbacks_t ompt_callbacks;
61 #if OMP_40_ENABLED && OMPT_SUPPORT && OMPT_TRACE 63 #define KMP_OMPT_DEPS_ALLOC __kmp_fast_allocate 64 #define KMP_OMPT_DEPS_FREE __kmp_fast_free 66 #define KMP_OMPT_DEPS_ALLOC __kmp_thread_malloc 67 #define KMP_OMPT_DEPS_FREE __kmp_thread_free 75 void ompt_pre_init(
void);
76 void ompt_post_init(
void);
79 extern int ompt_enabled;