collect

Run the specified analysis type and collect data into a result.

GUI Equivalent

Configure Analysis window > HOW pane

Syntax

-collect <analysis_type>

-c <analysis_type>

Arguments

analysis_type

Type of performance analysis. The following analysis types and configurable knobs are supported:

hotspots

Identify your most time-consuming source code using one of the available collection modes:

  • -knob sampling-mode=sw (former Basic Hotspots) to collect hotspots and stack information based on the user-mode sampling and tracing, which does not required sampling drivers but incurs higher collection overhead). This mode cannot be used to profile a system, but must either launch an application/process or attach to one.

  • -knob sampling-mode=hw (former Advanced Hotspots) to sample all processes on the system and identify hotspots.

Collection type: user-mode sampling and tracing collection or hardware event-based sampling.

Knobs: enable-characterization-insights, enable-stack-collection, sampling-interval, sampling-mode.

advanced-hotspots (deprecated - use hotspots instead)

Identify your most time-consuming source code. advanced-hotspots has a lower overhead than hotspots because it does not collect stack information. It can be used to sample all processes on a system.

Collection type: hardware event-based sampling collection.

Knobs: collection-detail, enable-user-tasks, enable-gpu-usage, gpu-counters-mode, sampling-interval, event-mode, enable-gpu-runtimes.

threading

Analyze how your application is using available logical CPU cores, discover where parallelism is incurring synchronization overhead, find how waits affect your application's performance, and identify potential candidates for parallelization.

Collection type: user-mode sampling and tracing collection.

Knobs: sampling-interval.

concurrency (deprecated - use threading instead)

Analyze how your application is using available logical CPU cores, discover where parallelism is incurring synchronization overhead, and identify potential candidates for parallelization.

Collection type: user-mode sampling and tracing collection.

Knobs: enable-user-sync, enable-user-tasks, sampling-interval, enable-gpu-usage,gpu-counters-mode, enable-gpu-runtimes.

locksandwaits (deprecated - use threading instead)

Identify where your application is waiting on synchronization objects or I/O operations, and discover how these waits affect your application's performance.

Collection type: user-mode sampling and tracing collection.

Knobs: enable-user-sync, enable-user-tasks, enable-gpu-usage, gpu-counters-mode, sampling-interval, enable-gpu-runtimes.

memory-consumption

Analyze memory consumption by your Linux application, its distinct memory objects and their allocation stacks.

Collection type: user-mode sampling and tracing collection.

Knobs: mem-object-size-min-thres.

hрc-performance

Identify opportunities to optimize CPU, memory, and FPU utilization for compute-intensive or throughput applications.

Collection type: hardware event-based sampling collection.

Knobs: enable-stack-collection, collect-memory-bandwidth, sampling-interval, dram-bandwidth-limits.

uarch-exploration (formely known as general-exploration)

Identify and locate the most significant hardware issues that affect the performance of your application. Use this analysis type as a starting point for microarchitecture analysis.

Collection type: hardware event-based sampling collection.

Knobs: enable-stack-collection, collect-memory-bandwidth, enable-user-tasks.

memory-access

Measure a set of metrics to identify memory access related issues (for example, specific for NUMA architectures).

Collection type: hardware event-based sampling collection.

Knobs: sampling-interval, dram-bandwidth-limits, analyze-openmp; Linux only: analyze-mem-objects, mem-object-size-min-thres.

sgx-hotspots (deprecated)

Analyze hotspots inside security enclaves for systems with the Intel Software Guard Extensions (Intel SGX) feature enabled.

Collection type: hardware event-based sampling collection.

Knobs: enable-stack-collection, enable-user-tasks.

tsx-exploration (deprecated)

Analyze Intel Transactional Synchronization Extensions (Intel TSX) usage.

Collection type: hardware event-based sampling collection.

Knobs: enable-user-tasks, analysis-step.

tsx-hotspots (deprecated)

Analyze hotspots inside transactions.

Knobs: enable-user-tasks, enable-stack-collection.

cpugpu-concurrency

Enable the CPU/GPU Concurrency analysis and explore code execution on the various CPU and GPU cores in your system, correlate CPU and GPU activity and identify whether your application is GPU or CPU bound.

Knobs: sampling-interval, enable-user-tasks, enable-user-sync, enable-gpu-usage, gpu-counters-mode, enable-gpu-runtimes.

gpu-hotspots

Identify GPU tasks with high GPU utilization and estimate the effectiveness of this utilization.

Collection type: hardware event-based sampling collection.

Knobs: gpu-sampling-interval, enable-gpu-usage, gpu-counters-mode, enable-gpu-runtimes, enable-stack-collection.

gpu-profiling

Analyze GPU kernel execution per code line and identify performance issues caused by memory latency or inefficient kernel algorithms.

Collection type: hardware event-based sampling collection.

Knobs: gpu-profiling-mode, kernels-to-profile.

graphics-rendering (preview)

Analyze the CPU/GPU utilization of your code running on the Xen virtualization platform. Explore GPU usage per GPU engine and GPU hardware metrics that help understand where performance improvements are possible. If applicable, this analysis also detects OpenGL-ES API calls and displays them on the timeline.

Collection type: hardware event-based sampling collection.

Knobs: gpu-sampling-interval, gpu-counters-mode.

fpga-interaction (preview)

Analyze the CPU/FPGA interaction issues via exploring OpenCL kernels running on FPGA, identify the most time-consuming FPGA kernels.

Collection type: hardware event-based sampling collection.

Knobs: sampling-interval, enable-stack-collection.

io

Monitor utilization of the IO subsystems, CPU and processor buses.

Collection type: hardware event-based sampling collection.

Knobs: kernel-stack, collect-memory-bandwidth, dram-bandwidth-limits; Linux only: dpdk, spdk.

Note

This is a PREVIEW FEATURE on Windows* OS. A preview feature may or may not appear in a future production release. It is available for your use in the hopes that you will provide feedback on its usefulness and help determine its future. Data collected with a preview feature is not guaranteed to be backward compatible with future releases. Please send your feedback to parallel.studio.support@intel.com or to intelsystemstudio@intel.com.

system-overview

Evaluate general behavior of Linux* or Android* target systems and correlate power and performance metrics with IRQ handling.

Collection type: hardware event-based sampling collection.

Knobs: collection-detail.

Note

For Android* systems, VTune Amplifier provides GPU analysis only on processors with Intel® HD Graphics and Intel® Iris® Graphics. You cannot view the collected results in the CLI report. To view the results, open the result file in GUI.

Default

OFF

The amplxe-cl command runs no data collection unless the collect action is specified.

Description

Use the collect action to perform analysis and collect data. By default, this process performs the specified type of analysis, collects and finalize data into a result file, and outputs a Summary report to stdout. In most cases you will want to use the search-dir action-option to specify the search directory. Some analysis types support the knob option, which allow you to specify additional level settings.

There are many options that you can use to customize the behavior of the collect action to suit your purposes. For example, you can choose whether to analyze a child process only, whether to start collection after a certain amount of time has elapsed, or whether to perform collection without finalizing the result. There are a few examples included in this topic. For more information, use one of the help commands described below, or browse or search this documentation for information on the type of analysis you wish to perform.

Note

To access the most current command line documentation for an action, enter amplxe-cl -help <action>, where <action> is one of the available actions. To see all available actions, enter amplxe-cl -help.

To view a list of analysis types supported for your processor:

> amplxe-cl -help collect

To view detailed information on the supported analysis type:

> amplxe-cl -help collect <analysis_type>

This command displays a description for the specified analysis type and its configuration options (knobs).

Alternate Options

collect-with

The collect-with action performs the same basic functions as the collect action, but provides additional knob settings for custom configuration.

Examples

This command runs the hotspots analysis in the hardware event-based sampling mode for a Linux myApp application, writes the result to the default directory, and outputs a summary report by default.

$ amplxe-cl -collect hotspots -knob sampling-mode=hw -- /home/test/sample

For best results, specify the search directories. This example collects a default-named hotspots result, searching for symbol files in the home/import/system_modules high-priority search directory.

$ amplxe-cl -collect hs -search-dir /home/import/system_modules -- /home/test/sample

You can use the target-pid or target-process options to attach a Hotspots collection to a running process. In this example, target-pid is used to attach the collection to a running process whose ID is 1234.

 $ amplxe-cl -collect hotspots -target-pid 1234

The no-auto-finalize action-option start a Threading analysis, collect performance data, and exit without finalizing the result.

$ amplxe-cl -collect threading -no-auto-finalize -- /home/test/sample
For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)