read and write I/O count as memory accesses. In particular, write-style I/O (write, writev, sendto, etc) requires defined data (that much I already had), and read-style I/O supplies defined data (this was missing).