Sequential page read ahead

The VMM anticipates the future need for pages of a file by observing the pattern in which a program accesses the file.

When the program accesses two successive pages of the file, the VMM assumes that the program will continue to access the file sequentially, and the VMM schedules additional sequential reads of the file. These reads are overlapped with the program processing, and will make the data available to the program sooner than if the VMM had waited for the program to access the next page before initiating the I/O.

For JFS, the number of pages to be read ahead is determined by the following VMM thresholds:
minpgahead
Number of pages read ahead when the VMM first detects the sequential access pattern.

If the program continues to access the file sequentially, the next read ahead occurs after the program accesses 2 * minpgahead pages, the next after 4 * minpgahead pages, and so on until the number of pages reaches maxpgahead.

maxpgahead
Maximum number of pages the VMM will read ahead in a file.
For Enhanced JFS, the number of pages to be read ahead is determined by the following VMM thresholds:
j2_minPageReadAhead
Number of pages read ahead when the VMM first detects the sequential access pattern.

If the program continues to access the file sequentially, the next read ahead occurs after the program accesses 2 * j2_minPageReadAhead pages, the next after 4 * j2_minPageReadAhead, and so on until the number of pages reaches j2_maxPageReadAhead.

j2_maxPageReadAhead
Maximum number of pages the VMM will read ahead in a sequential file.