io Command Line Analysis

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.

This collection type uses the hardware event-based sampling collection and system-wide Ftrace* collection (for Linux* and Android* targets)/ETW collection (Windows* targets) to provide a consistent view of the storage sub-system combined with hardware events and an easy-to-use method to match user-level source code with I/O packets executed by the hardware.

The analysis actively relies on the data produced by the kernel block driver system. In case your platform utilizes a non-standard block driver sub-system (for example, user-space storage drivers), IO metrics will not be available in the analysis type.

Use the Input and Output analysis to identify:

  • Imbalance between I/O and compute operations (HPC applications)

  • Long latency of I/O requests (transactional workloads)

  • Hardware utilization (streaming)

  • Data plane utilization (applications supporting DPDK framework). You can analyze how your application utilizes NIC ports, bandwidth, PCIe, and UPI.

  • I/O performance issues that may be caused by ineffective accesses to remote sockets or under-utilized throughput of an SPDK device

Syntax

$ amplxe-cl -collect io [-knob <knobName=knobValue>] [-- target] [target_options]

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

Prerequisites:

  • Run the VTune Amplifier command line interface with administrative privileges (Windows*) or root privileges (Linux*).

  • Enable system-wide profiling:

    • For system analysis WITH a target application or process specify your application or process and enable system-wide analysis with the -analyze-system option.

    • For system analysis WITHOUT a target application or process specify the collection duration with the -duration option.

Examples

Example 1: Disk Input and Output Analysis with a Target Application

This example shows how to run the Disk Input and Output analysis with specified Linux target application and enabled system-wide profiling:

amplxe-cl -collect io -knob kernel-stack=true -analyze-system -- /home/test/myApplication

Example 2: SPDK Input and Output Analysis without a Target Application

This example shows how to run a system-wide SPDK Input and Output analysis without specified target application for 30 seconds:

amplxe-cl -collect io -knob kernel-stack=false -knob spdk=true --duration 30

What's Next

When the data collection is complete, do one of the following to view the result:

For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)