Windows – Performance Counters: Page Reads/sec higher than Disk Reads/sec

iopspagefileperformance-counterswindows

Comparing the values for the Windows performance counters Page Reads/sec and Disk Reads/sec I noticed that page reads are consistently higher, which is strange, as it seems that page reads should be a subset of disk reads. Obviously, that is not the case.

Question: why are the values for Page Reads/sec higher than Disk Reads/sec?

More information:

The following graph shows both metrics on my Win10 machine when relatively idle, green representing Page Reads/sec, red Disk Reads/sec.

enter image description here

As I understand it, Disk Reads/sec are IOPS for a specific physical disk, whereas Page Reads/sec are IOPS caused by reads from the page file(s). If there is a single page file, IOPS caused by page file access should be lower than IOPS for the disk as a whole.

The descriptions of both counters as displayed in Performance Monitor:

  • Physical Disk\Disk Reads/sec: Disk Reads/sec is the rate of read operations on the disk.
  • Memory\Page Reads/sec: Page Reads/sec is the rate at which the disk was read to resolve hard page faults. It shows the number of reads operations, without regard to the number of pages retrieved in each operation. Hard page faults occur when a process references a page in virtual memory that is not in working set or elsewhere in physical memory, and must be retrieved from disk. This counter is a primary indicator of the kinds of faults that cause system-wide delays. It includes read operations to satisfy faults in the file system cache (usually requested by applications) and in non-cached mapped memory files. Compare the value of Memory\Pages Reads/sec to the value of Memory\Pages Input/sec to determine the average number of pages read during each operation.

Best Answer

Memory\Page Reads/sec is higher than disk reads because we cache pages in memory for performance reasons. Physical Disk\Disk Reads doesn't include when pages are fetched from the file system cache or from non-cached memory mapped files. Memory\Page Reads/sec does include those operations and is therefore consistently higher than Disk Reads.