From: Andy Colson <andy@squeakycode.net>
To: Robert Schnabel <schnabelr@missouri.edu>
Cc: pgsql-performance <pgsql-performance@postgresql.org>
Subject: Re: Allow sorts to use more available memory
Date: Mon, 12 Sep 2011 12:47:54 -0500
Message-ID: <4E6E45CA.20606@squeakycode.net> (raw)
In-Reply-To: <4E6E426D.7060405@missouri.edu>
References: <4E6E426D.7060405@missouri.edu>
On 9/12/2011 12:33 PM, Robert Schnabel wrote:
> The recent "data warehouse" thread made me think about how I use
> work_mem for some of my big queries. So I tried SET work_mem = '4GB' for
> a session and got
>
> ERROR: 4194304 is outside the valid range for parameter "work_mem" (64
> .. 2097151)
>
> A bit of searching turned up the "Allow sorts to use more available
> memory" section of the to-do list. Am I correct in reading that the
> max_val is 2GB and regardless of how much RAM I have in the box I'm
> stuck with only using 2GB? Am I missing something?
>
> I'm using: PostgreSQL 9.0.4, compiled by Visual C++ build 1500, 64-bit
> Windows 2008 Server Enterprise
>
> Thanks,
> Bob
>
>
work_mem is not the total a query can use. I believe each step can use
that much, and each backend can use it for multiple bits. So if you had
two backends, each doing 2 sorts, you'd use 2*2 = 4 * 2GB = 8GB.
-Andy
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: andy@squeakycode.net, schnabelr@missouri.edu
Subject: Re: Allow sorts to use more available memory
In-Reply-To: <4E6E45CA.20606@squeakycode.net>
* 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