On Windows® operating systems, NTFS will generally use a cluster size of 4K, so formatting to 512 is not useful except for applications that are compatible only with 512-byte sector sizes (such as Windows® XP and Windows Server® 2003).
The indicated amount is needed per IO Accelerator that supports paging. You must carefully plan which IO Accelerators are used to hold a paging file.
Non-paged memory pool
Pre-allocated memory for the IO Accelerator comes from the Windows kernel non-paged memory pool. This pool dynamically grows as system components consume additional kernel memory. The maximum size of this pool is restricted as follows:
•Windows Server 2003, 2008 R1/R2, 2012—75% of RAM up to a maximum of 128GB.
•Windows Vista and Windows 7—40% of RAM up to a maximum of 128GB.
The amount of in-use non-paged pool memory should be noted when planning page file usage. This is because the IO Accelerator preallocates RAM and that reduces the available physical non-paged memory. The driver fails to load if the total preallocated memory plus the in-use non-paged memory exceeds the maximum non-paged memory pool.
To determine the total non-paged memory pool use for two IO Accelerators, use the following example:
•One IO Accelerator is 80GB and the other is 160GB
•Both are formatted with a 4K sector size
•Both will support paging files
The current allocated non-paged pool is obtained from Task Manager and, in this example, has a value of 576 MiB. (Values shown in Task Manager are in MiB (1024x1024 = 1 MiB)). The total RAM on the system is 8,196 MiB and the operating is Windows Server 2008 R2.
To calculate the total available non-paged pool, use the following formula:
(8196 MiB x 0.75) - 576 - 284 (80GB IO Accelerator) - 569 (160GB IO Accelerator)
This still leaves 4,718 MiB available for non-paged pool.
Enabling and disabling paging support
Memory preallocation occurs during IO Accelerator driver initialization. To enable paging support, you must enable the FIO_PREALLOCATE_MEMORY configuration item. This can be done using the fio-configcommand-line utility. This parameter is assigned a string with a list of decimal serial numbers of the IO Accelerators that will support a paging file. The driver performs memory preallocation for those instances.
The following example illustrates using the fio-configutility, which enables paging and preallocation on two IO Accelerators with serial numbers 1234 and 17834. Serial number information can be obtained using the fio-statusutility.
fio-config -p FIO_PREALLOCATE_MEMORY "1234,17834"
To disable paging support on all drives, use a value of 0 for FIO_PREALLOCATE_MEMORY:
fio-config -p FIO_PREALLOCATE_MEMORY "0"
To query the current value, run this command:
fio-config -g FIO_PREALLOCATE_MEMORY
Using Windows page files with the IO Accelerator 61