Wednesday, October 23, 2013

Page File = RAM x 1.5? Not so fast if you're x64...

How to determine the appropriate page file size for 64-bit versions of Windows

A page file (also known as a "paging file") is an optional, hidden system file on a hard disk. The page file can be used to "back" (or support) system crash dumps and extend how much system-committed memory (also known as “virtual memory”) a system can back. It also enables the system to remove infrequently accessed modified pages from physical memory to let the system use physical memory more efficiently for more frequently accessed pages.

64-bit versions of Windows and Windows Server support more physical memory (RAM) than 32-bit versions support. However, the reason to configure the page file size has not changed. It has always been about supporting a system crash dump, if it is necessary, or extending the system commit limit, if it is necessary. For example, when a lot of physical memory is installed, a page file might not be required to back the system commit charge during peak usage. The available physical memory alone might be large enough to do this. However, a page file or a dedicated dump file might still be required to back a system crash dump.

Use the following considerations for page file sizing for all versions of Windows and Windows Server:

  • Crash dump setting: If you want a crash dump file to be created during a system crash, a page file or a dedicated dump file must exist and be large enough to back the system crash dump setting. Otherwise, a system memory dump file is not created.
  • Peak system commit charge: The system commit charge cannot exceed the system commit limit. This limit is the sum of physical memory (RAM) and all page files combined. If no page files exist, the system commit limit is slightly less than the physical memory installed. Peak system-committed memory usage can vary greatly between systems. Therefore, physical memory and page file sizing also varies.
  • Quantity of infrequently accessed pages: The purpose of a page file is to back infrequently accessed modified pages so that they can be removed from physical memory. This provides more available space for more frequently accessed pages. The "\Memory\Modified Page List Bytes" performance counter measures, in part, the number of infrequently accessed modified pages that are destined for the hard disk. However, be aware that not all the memory on the modified page list is written out to disk. Typically, several hundred megabytes of memory remains resident on the modified list. Therefore, consider extending or adding a page file if all the following conditions are true:
    • More available physical memory (\Memory\Available MBytes) is required.
    • The modified page list contains a significant amount of memory.
    • The existing page files are fairly full (\Paging Files(*)\% Usage).




The common wisdom has been RAM x 1.5 for how many billions of years? But now when even small portable notebooks can have 16GB+ RAM, and limited SSD space, let alone that RAM our servers have these days, that formula just doesn't work. Nor should it... For my personal boxes, I just let the System manage my page file size, but for fine tuning servers and such, this KB will help you dial in the perfect page file size....

(via The troubleshooters and problem solvers... - Reading: The modern Pagefile sizing on 64-bit Windows, and no it’s not 1.5X the amount of RAM.)

No comments: