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

Interpretation of profiling results

GVasi4
Beginner
710 Views

Hello!

I am trying to profile a C++ application with OpenMP using Intel Vtune Profiler and I've run Hotspots, Threading user-mode and hardware-based analyzes (see "hotspots", "user" and "hardware" pictures +"threads" picture from hardware analysis).

I have several questions about  results of these analyzes and I ask to help me.

1) What do these results generally mean? If I'm not mistaken, Hotspots analysis revealed that most of time was spent usefully and then Threading analyzes shows the opposite.
2) What is Semaphore object in Threading user-mode analysis?
3) Why one thread has such a lot of load? ("threads" picture) Most of work is done in parallel region.

What should I do to increase parallelism of this application?

I've read the documentation: https://software.intel.com/en-us/vtune-help-windows-targets but still can't understand what's happening in my case.

Algorithm of application is simple:
#pragma omp parallel num_threads(8){
    if(myID==0){
    <master thread job>
    }
    #pragma omp for schedule(static)
        <parallel cycle>
    if(myID==0){
    <master thread job>
    }
}

Many thanks! :)

P.S. I have Windows 10 and NetBeans with MinGW compiler

0 Kudos
5 Replies
AthiraM_Intel
Moderator
710 Views

Hi,

Thanks for reaching out to us.

Please find the answers for your queries.

1. Yes, you are correct. Hotspot analysis is used to identify sections of code that get a lot of execution time (hotspots). 
Threading analysis is used to identify how efficiently an application uses available processor compute cores and explore inefficiencies in threading runtime usage or contention on threading synchronization that makes threads waiting and prevents effective processor utilization. 
You can refer the below links to know more about these analysis
https://software.intel.com/en-us/vtune-help-basic-hotspots-analysis
https://software.intel.com/en-us/vtune-help-threading-analysis


2. In Threading analysis,User-Mode Sampling and Tracing is used to recognize synchronization objects and collect thread wait time by objects using tracing.There are two groups of synchronization objects supported by Intel VTune Profiler: objects usually used for synchronization between threads (such as Mutex or Semaphore) and objects associated with waits on I/O operations (such as Stream).

3. you can go through few of our tuning recipes related to inefficient threading for more understanding of the issue: https://software.intel.com/en-us/vtune-cookbook-tuning-recipes

If you have any further issues please let us know.

 

0 Kudos
AthiraM_Intel
Moderator
710 Views

Hi,

Could you please confirm whether the solution provided was helpful.

 

Thanks

0 Kudos
GVasi4
Beginner
710 Views

Hi!

I sincerely apologize for the long delay in response. It was due to log-in problem.

Information provided by you was very helpful in general, thank you very much!
However, in my particular case I've recognized that I have very big problems with parallelism on my laptop in general (not only with this application). I've written simple parallel program like

#pragma omp parallel num_threads(8)
#pragma omp for schedule(static)
<arithmetics>

and then Hotspots analysis have revealed that parallelism is very bad. Debug version runs for a relatively long time, but it has at least some parallelism (can't attach pictures due to an error on this site :( ). Release version is much faster, but it has no parallelism at all. By the way, microarchitecture exploration analysis revealed that I have many problems with hardware (for example, bad Front-End Bound parameters).

I have no idea why parallelism is so bad even for simple arithmetic program :( The model of laptop is Acer Nitro AN515-51

Tell me, please should I create new topic with this problem or continue in this one?

0 Kudos
AthiraM_Intel
Moderator
710 Views

Hi,

Since your initial queries are answered, it would be great if you raise a new thread for further queries.

Thanks

 

0 Kudos
AthiraM_Intel
Moderator
710 Views

Hi,

Since you raised another thread, we are closing this case. Please feel free to open new threads if you have any issues.

 

Thanks

0 Kudos
Reply