Intel® Advisor User Guide

ID 766448
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Find Data Dependencies

Prerequisites

Collect Survey data and select loops for the analysis from the column in the Survey report.

Accuracy Level

Custom

Enabled Analyses

Dependencies

NOTE:
Collecting Dependencies data may substantially increase report generation time. There are a variety of techniques available to minimize data collection, result size, and execution time. Check Minimize Analysis Overhead.

Result Interpretation

For safety purposes, compiler is often conservative when assuming data dependencies. The Dependencies analysis checks for real data dependencies in loops the compiler did not vectorize because of assumed dependencies and provides recommendations to help resolve the dependencies if detected.

NOTE:
The Dependencies analysis is not enabled in any of the accuracy presets by default. Select it manually from the Analysis Workflow tab before executing the perspective.

  • Click a loop in the top pane to see a detailed report for each dependency found in this loop below in the Dependencies Report tab.
  • Use the Dependencies Report to view each reported problem and its associated code locations.
    • If no dependencies found, it is safe to force vectorization.
    • For loops/functions with real dependencies, Intel Advisor reports dependency type and severity in the Loop-Carried Dependency column in the top pane.
  • Use the Dependencies Source window to view the focus and related source code regions to help you understand the cause of the reported problem.
  • Use the Code Locations window to view the focus and related source code regions to help you understand the cause of the reported problem.
  • To learn about a reported problem, right-click its name in the Dependencies Report, Problems and Messages pane and select What Should I Do Next?. This displays the help topic for that problem type with recommendations on how to resolve the dependency.
  • Double-click a problem in the Dependencies Report, Problems and Messages pane to open the Dependencies Source tab and examine the problem in more detail.

Dependencies Report Overview

In the Dependencies Report tab at the bottom of the Refinement Report, review the following panes:

  • Problems and Messages pane - Select the problems that you want to analyze by viewing their associated observations.

  • Code Locations pane - View details about the code locations for the selected problem in the Dependencies Report window. Icons identify the focus code location and related code location .

  • Filters pane - Filter contents of the report tab.

Associated Dependencies Source window, from top left to bottom right:

  • Focus Code Location pane - Use this pane to explore source code associated with focus code location in the Dependencies Source window.

  • Focus Code Location Call Stack pane - Use this pane to select which source code appears in the Focus Code Location pane in the Dependencies Source window.

  • Related Code Locations pane - Use this pane to explore source code associated with related code locations (related to the focus code location) in the Dependencies Source window.

  • Related Code Location Call Stack pane - Use this pane to select which source code appears in the Related Code Location pane.

  • Code Locations pane - Use this pane to view the details about the code location for the selected problem in the Dependencies Report window.

  • Relationship Diagram pane - Use this pane to view the relationships among code locations for the selected problem.