Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Sergey_K_Intel
Employee
70 Views

Lack of thread profile info in MS OpenMP executible

When using Thread Profiler on an MT task linked Microsoft OpenMP, no fork/join lines, no transition lines are shown on the profile picture. The state of all threads - except of main thread - is show as "Wait", i.e. dim green, though they work OK. What's wrong here? Intel compiler's OpenMP and WinAPI thread executibles are shown good.
Thanks,
Sergey
0 Kudos
3 Replies
Nicolae_P_Intel
Employee
70 Views


Thread Profiler will instrument/monitor only system calls related to thread synchronization so a lotof the informationwithin the OMP runtime will not get tracked and therefore will be missing from the TP display. The story is different for the Intel OMP runtime since thereare special notification calls implemented forThread Profiler in the OMP library.

TimP
Black Belt
70 Views

You would probably want to run with the Intel OpenMP libcompat, so as to support MSVC and Intel compilers equally well. I haven't tried profiling VC8 with Thread Profiler, as I prefer the Intel OpenMP profiling library, and VC9 is the MS version documented as supported with libcompat.
Sergey_K_Intel
Employee
70 Views


Thread Profiler will instrument/monitor only system calls related to thread synchronization so a lotof the informationwithin the OMP runtime will not get tracked and therefore will be missing from the TP display. The story is different for the Intel OMP runtime since thereare special notification calls implemented forThread Profiler in the OMP library.

Nikolae, so why WinAPI dumb multithreaded code - i.e. no additional thread synchronization calls beside ThreadCreate and ThreadTerminate - looks good in TP? I mean those solid green lines telling that threads run at full-throttle. What is special in MS OpenMP preventing it from looking solid? Timer-based sampler is the same in both cases...
Anyway thanks, this is more theoretical interest...
Reply