Concurrency analysis based on the user-mode sampling and tracing collection helps identify hotspot functions where processor utilization is poor. When cores are idle at a hotspot, you have an opportunity to improve performance by getting those cores working for you.
Concurrency analysis provides information on how many threads were running at each moment during application execution. It includes threads which are currently running or ready to run and therefore are not waiting at a defined waiting or blocking API. VTune Amplifier also shows CPU time while the hotspot was executing. A red bar indicates time where the processors are poorly utilized, a possible lead to help you decide where you should tune.
You can choose to view Concurrency analysis results in any of the following viewpoints:
Viewpoint | Description |
---|---|
Hotspots | Helps identify hotspots - code regions in the application that consume a lot of CPU time. |
Hotspots by CPU Usage | Helps identify hotspots - code regions in the application that consume a lot of CPU time. CPU time is broken down into CPU usage states: idle, poor, fair, and good. |
Hotspots by Thread Concurrency | Helps identify hotspots - code regions in the application that consume a lot of CPU time. CPU time is broken down into thread concurrency states: idle, poor, fair, good, and over. |
Locks and Waits | Shows how your application is utilizing available CPU cores and helps identify the cause of ineffective utilization, for example: threads waiting too long on synchronization objects (locks), I/O, or timers while CPU cores are underutilized. CPU time is represented by bars colored according to the CPU utilization level during the wait. |
By default, the VTune Amplifier displays the results of Concurrency analysis in the Hotspots by Thread Concurrency viewpoint where:
Summary window displays statistics on the overall application execution, identifying CPU time and processor utilization
Bottom-up pane displays hotspot functions in the bottom-up tree, CPU time and CPU utilization per function
Top-down Tree pane displays hotspot functions in the top-down tree, CPU time and utilization for a function only (Self time) and for a function and its children together (Total time)
Call Stack pane displays stacks for each hotspot function
Timeline pane displays thread activity and transitions
See Also
Supplemental documentation specific to a particular Intel Studio may be available at <install-dir>\<studio>\documentation\
.