Problem: 'Events= Sample After Value (SAV) * Samples' Is Not True If Multiple Runs Are Disabled
Cause
The
Allow multiple runs
option is located in the
Advanced
section of the
WHAT
pane on the
Configure Analysis
window. By default, the option is disabled. As a result, the VTune
uses event multiplexing and runs the data collection only once. This approach lowers the precision of the collected data. So, the Profiler
VTune
calculates the number of collected events using the formula:
Profiler
Events= Sample After Value (SAV) * Samples
. But when the event multiplexing is enabled, this formula is modified as follows:
Events= Sample After Value * Samples * Event Group Count
, where the Event Group Count is the number of incompatible groups of events used during the collection. The Event Group Count multiplier is introduced based on the heuristics approach to fill the gaps when the VTune
collected events for one event group only.
Profiler
For example, you have three groups of events: A, B and C, where event A1 is in group A. During the application run, the
VTune
spends equal time on collecting each group of events. While group A is analyzed, event A1 has 10 samples with SAV of 10.000 and your application generates no A1 samples at all for the rest of the time. In this case, the accurate result is 100.000 events (10.000 * 10). But the Profiler
VTune
provides the resultant number of events as 100.000 * 3 (A, B and C groups) = 300.000.
Profiler
Solution
Select the
Allow multiple runs
option to disable event multiplexing and run a separate data collection for each event group. This mechanism provides more precise data on collected events.