First off, drop your LRU_MAX_DIRTY to 2 and LRU_MIN_DIRTY to 0. You want to start cleaning as soon as the buffers start to accumulate and never stop until you have no more to clean. Beyond that, you may have other issues such as where the logs files are located vs. the dbspaces.
Also, all the dirty buffers may be for one dbspace?
Your length between checkpoint seems to be a little (or a lot) too short. What's your checkpoint interval?
Thanks Fred for replying. I will reduce the LRU_MAX_DIRTY and LRU_MIN_DIRTY. I have checked the activity on dbspaces. Disk read and writes are almost evenly distributed.
How to identify the dirty buffers belong to which dbspace?
My checkpoint interval is 300 secs.
identify the dirty buffers belong to which dbspace
Use 'onstat -b' to identify the dirty buffers belong to which dbspace. Check the page address in the 'onstat -b' output. Page address are in 0xCCCPPPPP format; where CCC is chunk number and PPPPP is page offset to that chunk.