User Guide


Vectorization and Code Insights

Steps to run the
Vectorization and Code Insights
Select the
Vectorization and Code Insights
perspective to identify:
  • Where vectorization, or parallelization with threads, will pay off the most
  • If vectorized loops are providing benefit, and if not, why not
  • Un-vectorized loops and why they are not vectorized
  • Memory usage issues
  • Performance insights and problems in general
To get the
Vectorization and Code Insights
perspective, from the
Analysis Workflow
  1. Choose collection accuracy level to select perspective steps and set analysis properties, depending on the desired results:
    • Low
      : Get the basic insights about vectorized and un-vectorized loops in your code.
    • Medium
      : Identify the number of times loops execute to make better decisions about your vectorization strategy.
    • High
      : Analyze application memory usage and performance values that help you make better decisions about your vectorization strategy in details.
    • Custom
      : Customize the perspective flow and properties.
    The higher accuracy value you choose, the higher runtime overhead is added to your application. The
    indicator shows the overhead for the selected configuration.
    By default, accuracy is set to Low. For more information, see Vectorization Accuracy Presets.
  2. If you want to limit the Characterization and/or MAP analyses to one or more specific loops/functions instead of analyzing the whole application:
    • From a Survey report generated: Mark one or more un-vectorized loops by enabling the corresponding checkboxes in the report.
  3. If you want check for loop-carried dependency to safely vectorize scalar loops, select the
    analysis. For more information about the Dependencies analysis and report, see Find Data Dependencies.
  4. Run the perspective: click button.
    While the perspective is running, you can do the following in the
    Analysis Workflow
    • Control the perspective execution:
      • Stop data collection and see the already collected data: Click the button.
      • Pause data collection: Click the button.
      • Cancel data collection and discard the collected data: Click the button.
    • Expand an analysis with to control the analysis execution:
      • Pause analysis and see the already collected data: Click the button.
      • Stop analysis and start the next analysis selected: Click the button.
      • Interrupt execution of all selected analyses and see the already collected data: Click the button.
    You can generate command lines for selected perspective configuration by clicking the
    Command Line
    button. For CLI wokflow example, see Command Line Use Cases.
When the data is collected,
Intel® Advisor
generates the
summary and report. Depending on the selected accuracy level and perspective properties, continue to investigate the results:
  • After you run the
    Vectorization and Code Insights
    perspective, the collected
    data becomes available for all other perspectives. If you switch to another perspective, you can skip the Survey step and run only perspective-specific analyses.
  • If the Survey analysis does not collect enough data to produce a Survey report, it displays a
    Target executed too quickly or does not contain debug symbols
    message. Increase the target workload or data to run the analysis for at least a few seconds, check whether debug information is specified as a build option, or specify a different target application.

Product and Performance Information


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