Changing the Wash Area for a Memory Pool

A portion of each pool is configured as the wash area.

When SAP ASE must read a buffer into cache, it places the buffer either:

After dirty pages (pages that have been changed in cache) pass the wash marker and enter the wash area, SAP ASE starts an asynchronous I/O on the page. When the write completes, the page is marked clean and remains available in the cache.

The space in the wash area must be large enough so that the I/O on the buffer can complete before the page needs to be replaced. This figure illustrates how the wash area of a buffer pool works with a strict and relaxed LRU cache.

Wash area of a buffer pool
Graphic describing how a wash area works in a strict LRU cache compared to a relaxed LRU cache. The strict LRU cache is shown as a bar that is divided into pages. When the page with the dirty read passes the wash area, it is written to disk. The relaxed LRU cache is described as a clock. When the victim pointer passes the first dirty read, this page is written to disk.
By default, the size of the wash area for a memory pool is configured as follows:

The minimum wash size is 10 buffers. The maximum size of the wash area is 80 percent of the pool size. You must specify the pool size and wash size for all pools larger than 2KB

A buffer is a block of pages that matches the I/O size for the pool. Each buffer is treated as a unit: all pages in the buffer are read into cache, written to disk, and aged in the cache as a unit. For the size of the block, multiply the number of buffers by the pool sizeā€”for a 2KB pool, 256 buffers equals 512KB; for a 16KB pool, 256 buffers equals 4096KB.

For example, if you configure a 16K pool with 1MB of space, the pool has 64 buffers; 20 percent of 64 is 12.8. This is rounded down to 12 buffers, or 192K, is the size of the block that is allocated to the wash area.

Related tasks
Viewing Information About Data Caches