From: Brad Nicholson <bnichols@ca.afilias.info>
To: Jeff <threshar@real.jefftrout.com>
Cc: pgsql-performance@postgresql.org
Subject: Re: bgwriter tunables vs pg_stat_bgwriter
Date: Wed, 17 Feb 2010 14:01:16 -0500
Message-ID: <1266433276.4412.39.camel@bnicholson-desktop> (raw)
In-Reply-To: <777025E3-813C-4EA6-B654-E4C54F83AA1A@torgo.978.org>
References: <777025E3-813C-4EA6-B654-E4C54F83AA1A@torgo.978.org>
On Wed, 2010-02-17 at 08:30 -0500, Jeff wrote:
> Since getting on 8.4 I've been monitoring things fairly closely.
> I whipped up a quick script to monitor pg_stat_bgwriter and save
> deltas every minute so I can ensure my bgwriter is beating out the
> backends for writes (as it is supposed to do).
>
> Now, the odd thing I'm running into is this:
>
> bgwriter_delay is 100ms (ie 10 times a second, give or take)
> bgwriter_lru_maxpages is 500 (~5000 pages / second)
> bgwriter_lru_multiplier is 4
>
> Now, assuming I understand these values right the following is what
> should typically happen:
>
> while(true)
> {
> if buffers_written > bgwriter_lru_maxpages
> or buffers_written > anticipated_pages_needed *
> bgwriter_lru_multiplier
> {
> sleep(bgwriter_delay ms)
> continue;
> }
> ...
> }
Correct.
> so I should not be able to have more than ~5000 bgwriter_clean pages
> per minute. (this assumes writing takes 0ms, which of course is
> inaccurate)
That works out to 5000/second - 300,000/minute.
> However, I see this in my stats (they are deltas), and I'm reasonably
> sure it is not a bug in the code:
>
> (timestamp, buffers clean, buffers_checkpoint, buffers backend)
> 2010-02-17 08:23:51.184018 | 1 | 1686
> | 5
> 2010-02-17 08:22:51.170863 | 15289 | 12676
> | 207
> 2010-02-17 08:21:51.155793 | 38467 | 8993
> | 4277
> 2010-02-17 08:20:51.139199 | 35582 | 0
> | 9437
> 2010-02-17 08:19:51.125025 | 8 | 0
> | 3
> 2010-02-17 08:18:51.111184 | 1140 | 1464
> | 6
> 2010-02-17 08:17:51.098422 | 0 | 1682
> | 228
> 2010-02-17 08:16:51.082804 | 50 | 0
> | 6
> 2010-02-17 08:15:51.067886 | 789 | 0
> | 1
>
> perhaps some stats buffering occurring or something or some general
> misunderstanding of some of these tunables?
>
> --
> Jeff Trout <jeff@jefftrout.com>
> http://www.stuarthamm.net/
> http://www.dellsmartexitin.com/
>
>
>
>
--
Brad Nicholson 416-673-4106
Database Administrator, Afilias Canada Corp.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: bnichols@ca.afilias.info, threshar@real.jefftrout.com
Subject: Re: bgwriter tunables vs pg_stat_bgwriter
In-Reply-To: <1266433276.4412.39.camel@bnicholson-desktop>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox