Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4975 Discussions

Anybody profiling OpenMP code?

David_A_Intel1
Employee
402 Views

I was testing VTune Amplifier XE on some OpenMP code and got a profile like this:

openmpdisplay.PNG

I found it strange that the time spent in the OpenMP parallel-for loops was not attributed to the function containing them, i.e., parallel_fors().  Have others experienced this and what did you think?

0 Kudos
2 Replies
TimP
Honored Contributor III
402 Views

 

intel openmp always had this treatment of making a separate function for each parallel region. this often seems convenient in accounting separately serial and parallel time.  it was extra useful when there was an omp profile option.

0 Kudos
Peter_W_Intel
Employee
402 Views

parallel_for$omp$parallel_for@?? are functions in OMP library to complete the tasks, which were submitted by parallel_for in user's code. There is no caller-callee relationship, the reason is that parallel_for$omp$parallel_for@?? works in another thread, you should see same behavior when using Intel? Thread Building Block (TBB). Light CPU time is spent in user code, exact work is in parallel library.

0 Kudos
Reply