Thread Concurrency
The number of active threads corresponds to the concurrency level of an application. By comparing the concurrency level with the number of processors,
Intel® VTune™
classifies how an application utilizes the processors in the system. It defines default utilization ranges depending on the number of processor cores and displays the thread concurrency in the
Profiler
Summary
and
Bottom-up
window. You can change the utilization thresholds by dragging the slider in the
Summary
window.
Thread concurrency may be higher than CPU utilization if threads are in the runnable state and not consuming CPU time.
VTune
defines the Target Concurrency level for your application by default to the number of physical cores.
Profiler
Utilization Type
| Default color
| Description
|
---|---|---|
Idle
| ![]() | All threads in the application are waiting - no threads are running. There can be only one node in the Thread Concurrency histogram indicating Idle utilization.
|
Poor
| ![]() | Poor utilization. By default, poor utilization is when the number of threads is under 50% of the target concurrency.
|
OK
| ![]() | Acceptable (OK) utilization. By default, OK utilization is when the number of threads is between 51-85% of the target concurrency.
|
Ideal
| ![]() | Ideal utilization. By default, ideal utilization is when the number of threads is between 86-115% of the target concurrency.
|
Over
| ![]() | Over-utilization. By default, over-utilization is when the number of threads is more than 115% of the target concurrency.
|