Re: Confused about the buffer pool size

Поиск
Список
Период
Сортировка
От MMK
Тема Re: Confused about the buffer pool size
Дата
Msg-id 186583.25640.qm@web35504.mail.mud.yahoo.com
обсуждение исходный текст
Ответ на Re: Confused about the buffer pool size  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Ответы Re: Confused about the buffer pool size
Список pgsql-hackers
Hello Heikki:

This is what the documentation says (see below).

But it does not tell my anything about what the actual buffer size is.
How do I know what the real buffer size is? I am using 8.4.4 and I am running only one query at a time.

Cheers,

MMK.

Sets the planner's assumption about the effective size of the disk cache that is available to a single query. This is factored into estimates of the cost of using an index; a higher value makes it more likely index scans will be used, a lower value makes it more likely sequential scans will be used. When setting this parameter you should consider both PostgreSQL's shared buffers and the portion of the kernel's disk cache that will be used for PostgreSQL data files. Also, take into account the expected number of concurrent queries on different tables, since they will have to share the available space. This parameter has no effect on the size of shared memory allocated by PostgreSQL, nor does it reserve kernel disk cache; it is used only for estimation purposes. The default is 128 megabytes (128MB).



--- On Tue, 5/25/10, Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> wrote:

From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
Subject: Re: [HACKERS] Confused about the buffer pool size
To: "MMK" <bomuvi@yahoo.com>
Cc: "PostgreSQL-development" <pgsql-hackers@postgresql.org>
Date: Tuesday, May 25, 2010, 11:36 AM

On 25/05/10 19:49, MMK wrote:
> Hello All:
> In the code (costsize.c), I see that effective_cache_size is set to DEFAULT_EFFECTIVE_CACHE_SIZE.
> This is defined as follows in cost.h
> #define DEFAULT_EFFECTIVE_CACHE_SIZE 16384
> But when I say
> show shared_buffers in psql I get,
> shared_buffers ---------------- 28MB
> In postgresql.conf file, the following lines appear
> shared_buffers = 28MB                   # min 128kB           # (change requires restart)#temp_buffers = 8MB                     # min 800kB
>
> So I am assuming that the buffer pool size is 28MB = 28 * 128 = 3584 8K pages.
> So should effective_cache_size be set to 3584 rather than the 16384?

No. Please see the manual for what effective_cache_size means:

http://www.postgresql.org/docs/8.4/interactive/runtime-config-query.html#GUC-EFFECTIVE-CACHE-SIZE

--   Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

В списке pgsql-hackers по дате отправления: