Setting kernel.shmmax - Mailing list pgsql-admin

From fatih ozturk
Subject Setting kernel.shmmax
Date
Msg-id 627376.70074.qm@web111514.mail.gq1.yahoo.com
Whole thread Raw
Responses Re: Setting kernel.shmmax  (Iñigo Martinez Lasala <imartinez@vectorsf.com>)
List pgsql-admin
Hi

My question is about shmmax kernel parameter and its importance in tuning postgresql database.

Our database version:

postgres=# select version();
                                                 version
----------------------------------------------------------------------------------------------------------
 PostgreSQL 8.3.3 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-3)
(1 row)

"uname -a" output:

Linux vt02.deneme.net 2.6.9-42.0.3.ELsmp #1 SMP Fri Oct 6 06:28:26 CDT 2006 x86_64 x86_64 x86_64 GNU/Linux


And some of our kernel parameters are

kernel.shmmni = 4096
kernel.shmall = 3279547
kernel.shmmax = 2147483648

"free"  output

             total       used       free     shared    buffers     cached
Mem:      16415276   14906444    1508832          0     139192   13743608
-/+ buffers/cache:    1023644   15391632
Swap:      4192924        208    4192716

As you see we have 16 GB  RAM and we use about 14 GB of it.
But kernel.shmmax parameter 2 GB.

In most of tuning guides setting shmmax parameter to %90 of total memory is advised.
But even though we didn't do such shmmax tuning "free" command shows that we are using 16 GB of RAM effectively.

How postgresql using RAM effectively without tuned shmmax?
Should we tune shmmax in our stuation?
If so, what is shmmax's proper value for our stuation?

Thanks for your interest


pgsql-admin by date:

Previous
From: Scott Mead
Date:
Subject: Re: Setting Shared-Buffers
Next
From: Iñigo Martinez Lasala
Date:
Subject: Re: Setting kernel.shmmax