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

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Bruce Momjian <bruce(at)momjian(dot)us>
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 16:14:33
Message-ID: CABUevExy_JoDTv-mqqqN3MDc2bxehw_5R_HGVsOy-BXLq6OH7w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Sep 5, 2013 at 3:01 AM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> On Tue, Jan 8, 2013 at 08:40:44PM -0500, Andrew Dunstan wrote:
>>
>> On 01/08/2013 08:08 PM, Tom Lane wrote:
>> >Robert Haas <robertmhaas(at)gmail(dot)com> writes:
>> >>On Tue, Jan 8, 2013 at 7:17 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> >>>... And I don't especially like the idea of trying to
>> >>>make it depend directly on the box's physical RAM, for the same
>> >>>practical reasons Robert mentioned.
>> >>For the record, I don't believe those problems would be particularly
>> >>hard to solve.
>> >Well, the problem of "find out the box's physical RAM" is doubtless
>> >solvable if we're willing to put enough sweat and tears into it, but
>> >I'm dubious that it's worth the trouble. The harder part is how to know
>> >if the box is supposed to be dedicated to the database. Bear in mind
>> >that the starting point of this debate was the idea that we're talking
>> >about an inexperienced DBA who doesn't know about any configuration knob
>> >we might provide for the purpose.
>> >
>> >I'd prefer to go with a default that's predictable and not totally
>> >foolish --- and some multiple of shared_buffers seems like it'd fit the
>> >bill.
>>
>> +1. That seems to be by far the biggest bang for the buck. Anything
>> else will surely involve a lot more code for not much more benefit.
>
> 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.

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2013-09-05 16:37:29 Re: dynamic shared memory
Previous Message Tom Lane 2013-09-05 14:22:13 Re: Analysis on backend-private memory usage (and a patch)