User Guide


Analyze Latency Issues

Run the System Overview analysis in the Hardware Tracing mode to identify what caused latency issues in your application execution.
The System Overview viewpoint for Hardware Tracing collection provides the following data:
  • system-wide statistics over time with the microsecond granularity
  • module boundaries on the timeline
  • function names for module entry points
  • Active/Idle thread time
  • interrupts on the timeline
  • user-mode and kernel-mode execution times for modules and module entry points
You can use this data to:

Explore the Impact of Interrupts on the Application Elapsed Time

Open the
window to explore interrupts on the timeline view. The
Interrupt Count
chart provides a quick overview of the number of interrupts triggered during execution.
Locate the interrupt-intensive regions and zoom in. Hover over a module name to see the
Module Entry Pont
that discovers a cause for an interrupt. For example, a page fault:
Or a timer interrupt:

Analyze Thread Activity at the Microsecond Level

Hardware Tracing analysis enables you to analyze data at a high granularity level. This could be particularly useful, for example, to debug a network workload with a one-second duration between requests:
Zoom in to a single request. For example, the
application measures and prints 250µs as reply time:
You can go deeper and analyze execution of each module:
Scheduler is becoming active after idle.
is used to sleep for 1 second.
A new message is sent.
driver is active.
Network driver takes just 332 nanoseconds.
is executed.

Explore Kernel Activity

OS Scheduling Impact
OS Kernel Activity
charts highlight regions where the system has performed multiple context switches and kernel-mode entries.
Locate a region with multiple context switches or high kernel activity and zoom in to investigate. For example, in this case the operating system has rescheduled a thread multiple times due to various reasons, including preemption and synchronization. Hover over the markers to get additional details and to determine the root cause of the issue.
In the grid pane of the
window, use the
Process / Module / Module Entry Point
grouping to get a detailed view of user-mode and kernel activity. Expand a module and study the module entry points to determine the amount of time spent by the module in the kernel mode.
You can also examine the number and frequency of
Kernel-mode Entries
caused by a specific module and function to determine the performance impact of kernel activity.
Hardware Tracing collection is more precise than event-based sampling and provides all the modules executed with their precise time.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at