perf-iostat(1)
===============

NAME
----
perf-iostat - Show I/O performance metrics

SYNOPSIS
--------
[verse]
'perf iostat' list
'perf iostat' <ports> -- <command> [<options>]

DESCRIPTION
-----------
Mode is intended to provide four I/O performance metrics per each PCIe root port:

- Inbound Read   - I/O devices below root port read from the host memory, in MB

- Inbound Write  - I/O devices below root port write to the host memory, in MB

- Outbound Read  - CPU reads from I/O devices below root port, in MB

- Outbound Write - CPU writes to I/O devices below root port, in MB

OPTIONS
-------
<command>...::
	Any command you can specify in a shell.

list::
	List all PCIe root ports.

<ports>::
	Select the root ports for monitoring. Comma-separated list is supported.

EXAMPLES
--------

1. List all PCIe root ports (example for 2-S platform):

   $ perf iostat list
   S0-uncore_iio_0<0000:00>
   S1-uncore_iio_0<0000:80>
   S0-uncore_iio_1<0000:17>
   S1-uncore_iio_1<0000:85>
   S0-uncore_iio_2<0000:3a>
   S1-uncore_iio_2<0000:ae>
   S0-uncore_iio_3<0000:5d>
   S1-uncore_iio_3<0000:d7>

2. Collect metrics for all PCIe root ports:

   $ perf iostat -- dd if=/dev/zero of=/dev/nvme0n1 bs=1M oflag=direct
   357708+0 records in
   357707+0 records out
   375083606016 bytes (375 GB, 349 GiB) copied, 215.974 s, 1.7 GB/s

    Performance counter stats for 'system wide':

      port             Inbound Read(MB)    Inbound Write(MB)    Outbound Read(MB)   Outbound Write(MB)
   0000:00                    1                    0                    2                    3
   0000:80                    0                    0                    0                    0
   0000:17               352552                   43                    0                   21
   0000:85                    0                    0                    0                    0
   0000:3a                    3                    0                    0                    0
   0000:ae                    0                    0                    0                    0
   0000:5d                    0                    0                    0                    0
   0000:d7                    0                    0                    0                    0

3. Collect metrics for comma-separated list of PCIe root ports:

   $ perf iostat 0000:17,0:3a -- dd if=/dev/zero of=/dev/nvme0n1 bs=1M oflag=direct
   357708+0 records in
   357707+0 records out
   375083606016 bytes (375 GB, 349 GiB) copied, 197.08 s, 1.9 GB/s

    Performance counter stats for 'system wide':

      port             Inbound Read(MB)    Inbound Write(MB)    Outbound Read(MB)   Outbound Write(MB)
   0000:17               358559                   44                    0                   22
   0000:3a                    3                    2                    0                    0

        197.081983474 seconds time elapsed

SEE ALSO
--------
linkperf:perf-stat[1]