User Guide

Contents

loops

Select loops (by criteria instead of human input) for deeper analysis.

Syntax

--loops
=
<string>
Arguments
<string>
is a double-quote-enclosed, comma-separated list of criteria (no spaces):
Arguments for Dependencies Analysis
Description
scalar
Include only scalar serial loops.
total-time>
n
Include only loops above n% of total CPU time.
has-source
Exclude only loops without source location.
has-issue
Include only loops with
Vector Dependence Prevents Vectorization
issue.
loop-height=
n
Include only loops by specific hierarchical position. 0 = Innermost loops.
For example: Use the following criteria to include specific loops in the following scenario:
  • loop-height=0 selects only innermost loop 3
  • loop-height=1 selects only loop 2 and loop 3
  • loop-height=2 selects all three loops
main | -> loop 1 | -> loop 2 | -> loop 3
top=
n
Include only loops with the largest self-time.
Arguments for Memory Access Patterns Analysis
Description
total-time>
n
Include only loops above n% of total CPU time.
has-source
Exclude only loops without source location.
has-issue
Include only loops with
Possible Inefficient Memory Access Pattern
issue.
loop-height=
n
Include only loops by specific hierarchical position. 0 = Innermost loops.
For example: Use the following criteria to include specific loops in the following scenario:
  • loop-height=0 selects only innermost loop 3
  • loop-height=1 selects only loop 2 and loop 3
  • loop-height=2 selects all three loops
main | -> loop 1 | -> loop 2 | -> loop 3
top=
n
Include only loops with the largest self-time.
Default
For Memory Access Patterns analysis: "loop-height=0,total-time>0.1"
For Dependencies analysis: "scalar,loop-height=0,total-time>0.1"
Actions Modified
collect
=map
collect
=dependencies
Usage
All criteria must be met to select loops for analysis.
This option is particularly useful when you are using automated scripts.
You can accomplish the same objective using the
mark-up-loops
action followed by a
collect
action for a Dependencies or Memory Access Patterns analysis.
Usage can decrease collection overhead.
Run a Dependencies analysis. Analyze only innermost loops with sources.
$ advisor --collect=dependencies -–loops=”loop-height=0,has-source” --project-dir=./advi --search-dir src:=./src -- ./bin/myApplication

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.