Re: proposal: Set effective_cache_size to greater of .conf value, shared_buffers

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, Claudio Freire <klaussfreire(at)gmail(dot)com>, Merlin Moncure <mmoncure(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: proposal: Set effective_cache_size to greater of .conf value, shared_buffers
Date: 2013-09-05 21:14:37
Message-ID: 20130905211437.GB27195@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Sep 5, 2013 at 06:14:33PM +0200, Magnus Hagander wrote:
> > I have developed the attached patch which implements an auto-tuned
> > effective_cache_size which is 4x the size of shared buffers. I had to
> > set effective_cache_size to its old 128MB default so the EXPLAIN
> > regression tests would pass unchanged.
>
> That's not really autotuning though. ISTM that making the *default* 4
> x shared_buffers might make perfect sense, but do we really need to
> hijack the value of "-1" for that? That might be useful for some time
> when we have actual autotuning, that somehow inspects the system and
> tunes it from there.
>
> I also don't think it should be called autotuning, when it's just a
> "smarter default value".
>
> I like the feature, though, just not the packaging.

That "auto-tuning" text came from the wal_buffer documentation, which
does exactly this based on shared_buffers:

The contents of the WAL buffers are written out to disk at every
transaction commit, so extremely large values are unlikely to
provide a significant benefit. However, setting this value to at
least a few megabytes can improve write performance on a busy
--> server where many clients are committing at once. The auto-tuning
-----------
selected by the default setting of -1 should give reasonable
results in most cases.

I am fine with rewording and not using -1, but we should change the
wal_buffer default and documentation too then. I am not sure what other
value than -1 to use? 0? I figure if we ever get better auto-tuning,
we would just remove this functionality and make it better.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2013-09-05 21:16:22 Re: proposal: Set effective_cache_size to greater of .conf value, shared_buffers
Previous Message Bruce Momjian 2013-09-05 21:06:41 Re: strange IS NULL behaviour