DPACK Basics: Page Faults
DPACK collectors track Memory Page Faults per Second in the Operating Systems of target hosts*. Hard page faults are important to understand the efficiency of the hardware and operating systems managing applications.
Memory Page Fault
Operating Systems employ a virtual memory subsystem that divides addressable memory used by applications up into pages, typically 4 KB chunks of memory. Under certain conditions, a page of memory can be flushed out to disk to save memory resources. The area of disk used to store pages of memory is known as the swap. When the application requests an address of memory from a page residing in the swap, the page is read from disk into the physical memory. This operation is known as a hard page fault.
Hard page faults occur when an application accesses a memory region that was previously swapped to disk and must be read back into memory. If the virtual memory allocated to applications greatly exceeds the physical memory allocated to the system, and if the virtual memory is being accessed regularly, the system will begin to experience large numbers of hard page faults. Because these page faults require disk reads to access (and often disk writes to free up space in the physical memory), they can cause performance problems.
Soft page faults are an entirely different process that have to do with virtual memory addressing and require no disk activity. Servers can endure very large numbers of soft page faults without causing performance issues.
DPACK will only track hard page faults.
Page Faults per Second
DPACK tracks the number of hard page faults that occur per second. The size of the actual memory pages is not tracked by DPACK. However, for almost all systems, the typical page size is 4 KB. The page size itself is not very important as is the number of page faults. A single page fault per second can be interpreted loosely as 1 write IOPS and 1 read IOPS for a net of 2 IOPS.
The way to view page faults in a DPACK project is either at the project level ranking the top 10 servers by total number of page faults (Figure 1) or at the host level that displays a time based distribution of page faults (Figure 2).
* In some instances, hosts with HP-UX or Solaris as an operating system will not provide page fault information to DPACK.