On Wed, May 30, 2012 at 11:06:45AM -0700, Jeff Janes wrote: > On Wed, May 30, 2012 at 10:57 AM, Bruce Momjian <br...@momjian.us> wrote: > > On Wed, May 30, 2012 at 10:38:10AM -0700, Jeff Janes wrote: > >> On Wed, May 30, 2012 at 9:56 AM, Bruce Momjian <br...@momjian.us> wrote: > >> > As part of a blog, I started looking at how a user could measure the > >> > pressure on shared buffers, e.g. how much are they being used, recycled, > >> > etc. > >> > > >> > They way you normally do it on older operating systems is to see how > >> > many buffers on the free list (about to be reused) are reclaimed as > >> > needed --- that usually indicates kernel cache pressure. Unfortunately, > >> > we don't have a freelist, except for initial assignment of shared > >> > buffers on startup. > >> > >> Isn't that what the buffers_alloc from pg_stat_bgwriter is ? > > > > The issue is that once a buffer is removed from the free list, it is > > never returned to the free list. > > A buffer doesn't need to be removed from the linked list in order for > buffers_alloc to get incremented.
Seems buffers_alloc is the number of calls to StrategyGetBuffer(), which tells how many time we have requested a buffer. Not sure how that helps measure buffer pressure. > Conceptually, the freelist consists not only of the linked list, but > also of all unpinned buffers with a usagecount of zero. True. I guess my problem is can't find out how many of those zero-uage-count buffers are being reclaimed as needed. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers