First, sort by the Self-Time and/or Total-Time column to find top time-consuming loops.
Intel® Advisor helps you:
Discover where to add parallelism to your program by identifying where your program spends its time. You propose parallel code regions when you annotate the parallel sites and tasks.
Predict the performance you might achieve with the proposed parallel code regions.
Predict the data sharing problems that could occur in the proposed parallel code regions.
In a serial program, the order of the operations during program execution are known. However, when code executes as multiple parallel tasks, an operation can execute before, after, or simultaneously with an operation in the other task. For example, when parallel tasks access or modify a shared memory location, data sharing problems can occur.
View the total amount of time that the function or loop and all of its callees executed. This value starts with the total time spent in the entire program at the top and decreases below the hot code regions in the call tree.
Examine specified sites for opportunities to reduce site overhead.
When linking your application program on Linux OS, you see linker (ld) messages such as:
undefined reference to `dlopen'
undefined reference to `dlsym'
Task overhead is the time spent creating a task and getting it assigned to a thread, and also the time spent stopping or pausing the thread when the task is complete.