Cycles and uOps Analysis

Cycles and uOps analysis type uses event-based sampling collection and is targeted for the Intel® Core™ 2 processor family.

Cycles and uOps analysis type helps identify several typical performance issues in the core pipeline. Specifically, you can use this analysis to identify mispredicted branches (with the corresponding precise event) and their performance impact, including the number of cycles stalled when the pipeline is being cleaned after mispredicted branch.

Explore the analysis results and analyze the UOPS_RETIRED.ANY/INST_RETIRED.ANY ratio value to identify when floating-point exception handlers are frequently invoked (the ratio >> 1) and causing performance problem.

To see the full list of events used for this analysis type:

  1. Click the New Analysis toolbar button.

    The Analysis Type window opens.

  2. From the left pane, select Intel Core 2 Processor Family Analysis > Cycles and uOps Analysis.

    The Cycles and uOps Analysis configuration pane opens on the right. The Details section provides a table with the processor events used for this analysis type.

You can choose to view the Cycles and uOps analysis results in any of the following viewpoints:

Viewpoint

Description

Hardware Event Counts

Displays the event count for all collected processor events. While the Hardware Event Sample Counts viewpoint provides the actual number of samples collected for an event, Hardware Event Count viewpoint estimates the number of times this event occurred during the collection.

Hardware Event Sample Counts

Displays the sample count for all collected processor events. While the Hardware Event Counts viewpoint estimates the number of times an event occurred during the collection, the Hardware Event Sample Counts viewpoint provides the actual number of samples collected for this event.

Hardware Issues

Helps identify where the application is not making the best use of available hardware resources. This viewpoint displays metrics derived from hardware performance counters. Hover over the highlighted metrics values in the grid to read why the extreme value might represent a performance problem.

Hotspots

Helps identify hotspots - code regions in the application that consume a lot of CPU time.

Task Time

Visualizes tasks, logical units of work on specific threads, based on ITT API annotations. Identify tasks with the highest execution time and analyze threads responsible for a particular task.

These viewpoints may include the following windows:

  • Summary window displays statistics on the overall application execution.

  • Bottom-up pane displays performance data per metric (event ratio/event count/sample count) for each hotspot function.

  • Top-down Tree window displays hotspot functions in the call tree, performance metrics for a function only (Self value) and for a function and its children together (Total value).

  • PMU Events window displays count for PMU events selected for the analysis.

  • Uncore Events window displays count for uncore events selected for the analysis. If there are no uncore events, the upper pane of the window is empty.

  • Tasks, Tasks over Time, and Tasks by Threads windows provide details on tasks specified in your code with the Task API.

For more complete information about compiler optimizations, see our Optimization Notice.