Buffer pool simulation results
After you run a buffer pool simulation, you need to interpret the output to determine how to modify your buffer pool sizes.
When you run a workload with simulated buffer pools enabled, the Db2 database manager collects statistics on simulated buffer pools if you take one of the following actions:
- Start a class 1 statistics trace for IFCID 0002 before you began a simulation
A data section that is mapped by macro DSNDQBSP records the simulated buffer pool information.
- Issue the following command after you activate simulated buffer pools and run a
workload:
-DISPLAY BUFFERPOOL(bpname) DETAIL
The first information for which you can use the simulation output is to compare the number of pages in the simulated buffer pool that were allocated to the number of pages that were used. The following example shows this information in DISPLAY BUFFERPOOL output:
DSNB431I -DB2A SIMULATED BUFFER POOL SIZE = 50000 BUFFERS -
ALLOCATED = 50000
IN-USE = 34999 HIGH IN-USE = 35000
SEQ-IN-USE = 30469 HIGH SEQ-IN-USE = 34978
This output shows that if 50000 buffers were allocated, only 35000 would be used, so the number of buffers could be increased by 35000.
Given this information, your next step would be to increase the virtual buffer pool size by 35000.
Avoidable page read operations
You can also use the simulation output to determine how often page read I/O operations could have been avoided. The following example, which is the result of a simulation in a data sharing environment, shows the information in DISPLAY BUFFERPOOL DETAIL output:
DSNB432I -CEA1 SIMULATED BUFFER POOL ACTIVITY -
AVOIDABLE READ I/O -
SYNC FROM DASD (R) =8425678
SYNC FROM DASD (S) =102357
ASYNC FROM DASD =1184257
SYNC FROM GBP (R) =894062
SYNC FROM GBP (S) =2747
ASYNC FROM GBP = 53212
PAGES MOVED INTO SIMULATED BUFFER POOL =12257444
TOTAL AVOIDABLE SYNC I/O DELAY =4275760 MILLISECONDS
Th DSNB432I output shows the numbers of page accesses that the buffer pool simulation determined could be avoided, for various types of read activity.
When you specify the DETAIL option, the output includes statistics on activity in the simulated buffer pool, including the numbers of page accesses that the buffer pool simulation determined could be avoided, for various types of read activity.
DSNB432I - SIMULATED BUFFER POOL ACTIVITY -
AVOIDABLE READ PAGE MISSES -
SYNC FROM DASD (R) = pages-sync-rand-dasd
SYNC FROM DASD (S) = pages-sync-seq-dasd
ASYNC FROM DASD = pages-async-dasd
SYNC FROM GBP (R) = pages-sync-rand-gbp
SYNC FROM GBP (S) = pages-sync-seq-gbp
ASYNC FROM GBP = pages-async-gbp
PAGES MOVED INTO SIMULATED BUFFER POOL = pages-to-sim-bp
TOTAL AVOIDABLE SYNC I/O DELAY = sync-io-delay MILLISECONDS
- pages-sync-rand-dasd
- The number of pages accessed randomly by avoidable synchronous read I/O from disk.
- pages-sync-seq-dasd
- The number of pages accessed sequentially by avoidable synchronous read I/O from disk.
- pages-async-dasd
- The number of pages prefetched by avoidable asynchronous read I/O from disk.
- pages-sync-rand-gbp
- The number of pages accessed randomly by avoidable synchronous read from the group buffer pool..
- pages-sync-seq-gbp
- The number of pages accessed sequentially by avoidable synchronous read from the group buffer pool.
- pages-async-gbp
- The number of pages accessed by avoidable asynchronous read from the group buffer pool.
- pages-to-sim-bp
- The number of pages that were logically moved from the virtual buffer pool into the simulated buffer pool.
- sync-io-delay
- The total time in milliseconds that the buffer pool simulation determined would be spent waiting for synchronous read I/O from disk.
The most important statistic from the simulation is that a large number of synchronous read I/O operations for randomly accessed pages could have been avoided.
Given this information, your next step would be to increase the SPSIZE value to see whether you can significantly decrease the numbers for the avoidable operations.