39 #include "kmp_itt.inl"
45 kmp_int32 __kmp_barrier_domain_count;
46 kmp_int32 __kmp_region_domain_count;
47 __itt_domain* __kmp_itt_barrier_domains[KMP_MAX_FRAME_DOMAINS];
48 __itt_domain* __kmp_itt_region_domains[KMP_MAX_FRAME_DOMAINS];
49 __itt_domain* __kmp_itt_imbalance_domains[KMP_MAX_FRAME_DOMAINS];
50 kmp_int32 __kmp_itt_region_team_size[KMP_MAX_FRAME_DOMAINS];
51 __itt_domain * metadata_domain = NULL;
53 #include "kmp_version.h"
57 KMP_BUILD_ASSERT(
sizeof( kmp_itt_mark_t ) ==
sizeof( __itt_mark_type ) );
69 kmp_int32 __kmp_itt_prepare_delay = 0;
70 kmp_bootstrap_lock_t __kmp_itt_debug_lock = KMP_BOOTSTRAP_LOCK_INITIALIZER( __kmp_itt_debug_lock );
72 #endif // USE_ITT_NOTIFY
74 void __kmp_itt_initialize() {
83 __itt_mark_type version;
84 __kmp_str_buf_init( & buf );
87 "OMP RTL Version %d.%d.%d",
92 if ( __itt_api_version_ptr != NULL ) {
93 __kmp_str_buf_print( & buf,
":%s", __itt_api_version() );
95 version = __itt_mark_create( buf.str );
96 __itt_mark( version, NULL );
97 __kmp_str_buf_free( & buf );
103 void __kmp_itt_destroy() {
105 __kmp_itt_fini_ittlib();
113 __itt_error_code err,
118 case __itt_error_no_module : {
119 char const * library = va_arg( args,
char const * );
121 int sys_err = va_arg( args,
int );
122 __kmp_msg( kmp_ms_warning, KMP_MSG( IttLoadLibFailed, library ), KMP_SYSERRCODE( sys_err ), __kmp_msg_null );
124 char const * sys_err = va_arg( args,
char const * );
125 __kmp_msg( kmp_ms_warning, KMP_MSG( IttLoadLibFailed, library ), KMP_SYSERRMESG( sys_err ), __kmp_msg_null );
128 case __itt_error_no_symbol : {
129 char const * library = va_arg( args,
char const * );
130 char const * symbol = va_arg( args,
char const * );
131 KMP_WARNING( IttLookupFailed, symbol, library );
133 case __itt_error_unknown_group : {
134 char const * var = va_arg( args,
char const * );
135 char const * group = va_arg( args,
char const * );
136 KMP_WARNING( IttUnknownGroup, var, group );
138 case __itt_error_env_too_long : {
139 char const * var = va_arg( args,
char const * );
140 size_t act_len = va_arg( args,
size_t );
141 size_t max_len = va_arg( args,
size_t );
142 KMP_WARNING( IttEnvVarTooLong, var, (
unsigned long) act_len, (
unsigned long) max_len );
144 case __itt_error_cant_read_env : {
145 char const * var = va_arg( args,
char const * );
146 int sys_err = va_arg( args,
int );
147 __kmp_msg( kmp_ms_warning, KMP_MSG( CantGetEnvVar, var ), KMP_ERR( sys_err ), __kmp_msg_null );
149 case __itt_error_system : {
150 char const * func = va_arg( args,
char const * );
151 int sys_err = va_arg( args,
int );
152 __kmp_msg( kmp_ms_warning, KMP_MSG( IttFunctionError, func ), KMP_SYSERRCODE( sys_err ), __kmp_msg_null );
155 KMP_WARNING( IttUnknownError, err );