Quoting from the documentation,documentation:
The stat file consists of a single line of text containing 11 decimal values separated by whitespace. The fields are summarized in the following table, and described in more detail below:
Name units description ---- ----- ----------- read I/Os requests number of read I/Os processed read merges requests number of read I/Os merged with in-queue I/O read sectors sectors number of sectors read read ticks milliseconds total wait time for read requests write I/Os requests number of write I/Os processed write merges requests number of write I/Os merged with in-queue I/O write sectors sectors number of sectors written write ticks milliseconds total wait time for write requests in_flight requests number of I/Os currently in flight io_ticks milliseconds total time this block device has been active time_in_queue milliseconds total wait time for all requests
read sectors, write sectors
These values count the number of sectors read from or written to this block device. The "sectors" in question are the standard UNIX 512-byte sectors, not any device- or filesystem-specific block size. The counters are incremented when the I/O completes.
You can use this one-liner to get the stat file consists of a single linenumber of text containing 11 decimal values separated by whitespace. The fields are summarized in the following table, and described inbytes more detail beloweasily:
Nameawk '{printf("read %d bytes, wrote %d bytes\n", $3*512, $7*512)}' /sys/block/vda/stat
Results for Scientific Linux 6.1 i386
I tested this on a KVM/qemu virtual machine running Scientific Linux 6.1 i386 (which is similar to RHEL). The following services were enabled: acpid, auditd, crond, network, postfix, rsyslog, sshd and udev-post. The swap is on a separate disk, so it's not taken into account.
The stats for 85 boots, taken remotely with SSH a couple of seconds after the login prompt appeared, were:
units Name description ---- Median Average Stdev ----- -------- ------ ------- ----- read I/Os requests1920 1920.2 number of read I/Os processed2.6 read merges requests1158 1158.4 number of read I/Os1.8 merged with in-queue I/O read sectors sectors85322 85330.9 number of31.9 sectors>> read MiBytes 41.661 41.665 0.016 read ticks milliseconds1165 total wait time for1177.2 read requests 94.1 write I/Os requests33 number of32.6 write I/Os processed 1.7 write merges requests64 number of59.6 write I/Os merged with in-queue I/O7.4 write sectors sectors762 715.2 number of sectors written 70.9 >> write ticksMiBytes 0.372 milliseconds total0.349 wait time for write requests0.035 in_flight write ticks requests 51 number of I/Os currently in59.0 flight io_ticks 17.4 milliseconds in_flight total time this block device has been0 active time_in_queue milliseconds total wait time0.0 for all requests 0.0
read sectors, write sectors
These values count the number of sectors read from or written to this block device. The "sectors" in question are the standard UNIX 512-byte sectors, not any device- or filesystem-specific block size. The counters are incremented when the I/O completes.
Results for Scientific Linux 6.1 i386
I tested this on a KVM/qemu virtual machine running Scientific Linux 6.1 i386. The following services were enabled: acpid, auditd, crond, network, postfix, rsyslog, sshd and udev-post. I run this command over SSH:
awk '{printf("read %d bytes, wroteio_ticks %d bytes\n", $3*512, $7*512)}' /sys/block/vda/stat
The results for multiple boots seem to be pretty consistent:
Read 42132480 bytes, wrote895 377856 bytes Read 42103808 bytes, wrote 300032909.9 bytes 57.8 Read 42140672 bytes, wrote 300032time_in_queue bytes Read 42140672 bytes,1217 wrote 353280 bytes Read 42136576 bytes,1235.2 wrote 377856 bytes 98.5
The boot time was around 20 seconds.