User Guide

Contents

collect.py Options

Depending on options specified, collect basic data, do markup, and collect refinement data. By default, execute all steps. For any step besides markup, you must specify an application argument.

Usage

advixe-python <APM>/collect.py
<project-dir>
[--options] -- <target> [target-options]
Replace
<APM>
with
$APM
on Linux* OS or
%APM%
on Windows* OS.

Options

The following table describes options that you can use with the
collect.py
script. The target application to analyze and application options, if any, must be preceded by two dashes and a space.
Option
Description
<project-dir>
Required. Specify the path to the
Intel® Advisor Beta
project directory.
-h
--help
Show help message and exit.
-v
<verbose>
--verbose
<verbose>
Specify output verbosity level:
  • 1 - Show only error messages. This is the least verbose level.
  • 2 - Show warning and error messages.
  • 3 (default) - Show information, warning, and error messages.
  • 4 - Show debug, information, warning, and error messages. This is the most verbose level.
This option affects the console output and debug log, but does not affect logs and report results.
--no-cachesim
Disable cache simulation during collection. The model assumes 100% hit rate for cache.
Usage decreases analysis overhead.
--config
<config>
Specify a configuration file by absolute path or name. If you choose the latter, the model configuration directory is searched for the file first, then the current directory.
You can specify several configurations by using the option more than once.
-o
<output-dir>
--out-dir
<output-dir>
Specify the directory to put all generated files into. By default, results are saved in
<advisor-project>/perf_models/mNNNN
. If you specify an existing directory or absolute path, results are saved in this directory. The new directory is created if it does not exist. If you only specify the directory
<name>
, results are stored in
<advisor-project>/perf_models/<name>
.
-p
<output-name-prefix>
--out-name-prefix
<output-name-prefix>
Specify a string to be prepended to output result filenames.
-c
{basic, refinement, full}
--collect
{basic, refinement, full}
Specify the type of data to collect for an application:
  • basic
    - Collect basic data (Hotspots and FLOPs).
  • refinement
    - Collect refined data (Dependencies) for marked loops only.
  • full
    (default) - Collect both basic data for application and refined data for marked loops.
-b
--collect-basic
Deprecated
; use
--collect basic
instead.
-r
--collect-refinement
Deprecated
; use
--collect refinement
instead.
-f
--collect-full
Deprecated
; use
--collect full
instead.
--executable-of-interest
<executable-name>
Specify the executable process name to profile if it is not the same as the application to run. Use this option if you run your application via script or other binary.
Specify the
name
only, not the full path.
--model-system-calls
(default)
Analyze regions with system calls inside. The actual presence of system calls inside a region may reduce model accuracy.
--no-model-system-calls
Do not analyze regions that contain system calls.
--jit
Enable data collection and analysis for applications with DPC++, OpenMP* target, and OpenCL™ code on a base platform.
--enable-slm
Enable SLM modeling in the memory hierarchy model. Must be used both with
collect.py
and
analyze.py
.
--no-profile-jit
Disable analysis of JIT functions.
-m
[{all, generic, regions, omp, dpcpp, daal, tbb}]
--markup
[{all, generic, regions, omp, dpcpp, daal, tbb}]
Mark up loops after survey or other data collection. Use this option to limit the scope of further collections by selecting loops according to a provided parameter:
  • all
    - Get lists of loop IDs to pass as the option for further collections.
  • generic
    (default) - Mark up all regions and select the most profitable ones.
  • regions
    - Select already existing parallel regions.
  • omp
    - Select outermost loops in OpenMP* regions.
  • dpcpp
    - Select outermost loops in DPC++ regions.
  • daal
    - Select outermost loops in Intel® Data Analytics Acceleration Library (Intel® DAAL) regions.
  • tbb
    - Select outermost loops in
    Intel® Threading Building Blocks (Intel® TBB)
    regions.
omp
,
dpcpp
, or
generic
selects loops in the project so that the corresponding collection can be run without loop selection options.
You can specify several parameters in a comma-separated list. Loops are selected if they fit any of specified parameters.
--no-cache-sources
Enable keeping source code cache within a project.
--dry-run
Show the
Intel® Advisor Beta
CLI commands for
advixe-cl
appropriate for the specified configuration. No actual collection is performed.
--data-transfer
(default)
Enable data transfer analysis.
--no-data-transfer
Disable data transfer analysis. Use this option to reduce collection overhead.
--track-heap-objects
(default)
Attribute heap-allocated objects to the analyzed loops that accessed these objects. Enabling can increase collection overhead.
--no-track-heap-objects
Disable attributing heap-allocated objects to the analyzed loops that accessed the objects. Disabling can decrease collection overhead.
--no-stacks
Run data collection without collecting data distribution over stacks. You can use this option to reduce overhead at the potential expense of accuracy.
--track-stack-accesses
(default)
Track accesses to stack memory.
--no-track-stack-accesses
Disable tracking accesses to stack memory.

Examples

  • Collect full data on
    myApplication
    with default configuration and save the project to the
    ./advi
    directory.
    advixe-python $APM/collect.py ./advi -- myApplication
  • Collect refinement data for OpenMP* and DPC++ loops on
    myApplication
    with a custom configuration file
    config.toml
    and save the project to the
    ./advi
    directory.
    advixe-python $APM/collect.py ./advi --collect refinement --markup [omp,dpcpp] --config ./config.toml -- myApplication
  • Get commands appropriate for a custom configuration specified in the
    config.toml
    file to collect data separately with
    advixe-cl
    . The commands are ready to copy and paste.
    advixe-python $APM/collect.py ./advi --dry-run --config ./config.toml

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804