Intel® VTune™ Amplifier XE and Intel® VTune™ Amplifier for Systems Help

Disk Input and Output Analysis

Disk Input and Output analysis is a platform-wide analysis that monitors utilization of the disk subsystem, CPU and processor buses.

This analysis type uses the hardware event-based sampling collection and system-wide Ftrace* collection 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), disk metrics will not be available in the analysis type.

Use the Disk Input and Output analysis to identify:

I/O Analysis Metrics

VTune Amplifier uses the following system-wide metrics for the Disk I/O analysis:

Running Disk Input and Output Analysis

Prerequisites:

To run the Disk Input and Output analysis:

  1. Click the New Analysis button on the Intel® VTune™ Amplifier toolbar.

    The New Amplifier Result tab opens with the Analysis Type window active.

  2. From the analysis tree on the left pane, select Platform Analysis > Disk Input and Output.

    The analysis configuration pane opens on the right.

    This predefined analysis type does not provide additional options (knobs) to configure.

  3. Click the Start button on the right to run the analysis.

To run the Disk Input/Output analysis from the command line, enter:

$ amplxe-cl -collect disk-io -- <target> [target_options]

Viewpoints

VTune Amplifier collects the data, generates a rxxxdiskio result, and opens it in the default Disk Input and Output viewpoint that displays statistics on I/O waits (Linux targets only), I/O operations and I/O data transfers distributed over time and correlated with the data on the application execution. Start with the Disk Input and Output Histogram sections of the Summary window. Identify slow I/O operations and switch to the grid view for further analysis.

What's Next

If you identified imbalance between I/O and compute operations, consider modifying your code to make I/O operations asynchronous.

For I/O requests with long latency, check whether your data can be pre-loaded, written incrementally, or consider upgrading your storage device (to SSD, for example).

See Also