From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Analysis on backend-private memory usage (and a patch) |
Date: | 2013-09-04 20:56:49 |
Message-ID: | 12587.1378328209@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> writes:
> One fairly simple thing we could do is to teach catcache.c to resize the
> caches. Then we could make the initial size of all the syscaches much
> smaller.
I think this is attractive for the *other* reason you mention, namely
preserving reasonable performance when a catcache grows larger than
expected; but I'm pretty skeptical of nickel-and-diming caches that are
already really small. Is it really worth cutting the TSPARSER caches
from 4 pointers to 2 for instance?
What concerns me about initially-undersized caches is that we'll waste
space and time in the enlargement process. I'd suggest trying to get some
numbers about the typical size of each cache in a backend that's done a
few things (not merely started up --- we should not be optimizing for the
case of connections that get abandoned without running any queries).
Then set the initial size to the next larger power of 2.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2013-09-04 20:56:55 | Re: [PERFORM] encouraging index-only scans |
Previous Message | Tomas Vondra | 2013-09-04 20:46:55 | Re: [rfc] overhauling pgstat.stat |