There are a few tools available to perform block devices I/O monitoring and profiling.
iotop
, which we mentioned in the Exploring Yocto's tracing and profiling tools recipe, gives a general idea of the throughput on a system and a particular process. iostat
provides many more statistics regarding CPU usage and device utilization, but does not provide per process details. Finally, blktrace
, a GPLv2 licensed tool that monitors specific block devices' I/O at a low level, and can also compute I/O operations per second (IOPS).
This recipe will explain how to use blktrace
to trace block devices and blkparse
, to convert the traces into human readable format.
Flash filesystems, even if they are presented to the user space as block devices, cannot be profiled with blktrace
.