On Wed, Aug 11, 2010 at 11:41 PM, Greg Smith <greg@2ndquadrant.com> wrote:
> Sandeep Srinivasa wrote:
>>
>> Maybe a tabular form would be nice - "work_mem" under...
>
> The problem with work_mem in particular is that the useful range depends
> quite a bit on how complicated you expect the average query running to be.
And it's very dependent on max connections. A machine with 512GB that
runs batch processes for one or two import processes and then has
another two or three used to query it can run much higher work_mem
than a machine with 32G set to handle hundreds of concurrent accesses.
Don't forget that when you set work_mem to high it has a very sharp
dropoff in performance as swapping starts to occur. If work_mem is a
little low, queries run 2 or 3 times slower. If it's too high the
machine can grind to a halt.