select
select
Select loops (by file and line
number, ID, or criteria) for deeper analysis.
Syntax
--select
=
<string>
Arguments
<string>
is a comma-separated
list of file name and line number, loop ID, and/or criteria in the
[(r|recursive):]<id>|<file>:<line>|<criteria>[,<id>|<file>:<line>|<criteria>,..]
format. Add
r:
(or
recursive:
) prefix to select all loops in call trees
starting from heads selected by criteria, source location or ID.
<criteria>
can
be one of the following:
Criteria | Description |
---|---|
scalar
| Include scalar serial loops.
|
total-time> N | Include loops above N% of total CPU time.
|
has-source
| Exclude loops without source location.
|
has-issue
| Include loops with
Vector Dependence Prevent Vectorization or
Possible Inefficient Memory Access Pattern issue.
|
loop-height= N | Include loops at a specific hierarchical
position. 0 = Innermost loops.
|
markup= name | Select loops using a pre-defined mark-up
algorithm. Supported algorithms are:
|
Default
No default argument
Usage
Use
+
to combine criteria with AND logic. For example, use
--select=scalar+has-source
to
select all scalar loops that have source location.
Selecting loops of
interest can decrease collection overhead.
Do not confuse the
checkbox; therefore loop selection persists beyond the duration of the
checkbox; therefore loop selection persists only for the duration of the
mark-up-loops
action with the
mark-up-list
action option. The
mark-up-loops
action coupled with the
select
action option enables a GUI

mark-up-loops
action and applies to downstream analyses, such as Dependencies and Memory Access Patterns analyses. The
collect
action coupled with the
mark-up-list
action option simulates enabling a GUI

collect
action.
- Run a Survey analysis to identify loops of interest.
- Select those loops for deeper analysis.
$ advisor --collect=survey --project-dir=./myAdvisorProj -- ./bin/myTargetApplication $ advisor --mark-up-loops --select=foo.cpp:34,bar.cpp:192 --project-dir=./myAdvisorProj -- ./bin/myTargetApplication