Aah ok :) 

I've set my values now as follow (2GB RAM):

SHMMAX=`cat /proc/meminfo | grep MemTotal | cut -d: -f 2 | awk '{print
$1*1024/3}'`
echo kernel.shmmax=${SHMMAX} >> /etc/sysctl.conf
SHMALL=`expr ${SHMALL} / 4096 \* \( 4096 / 16 \)`
echo kernel.shmall=${SHMALL} >> /etc/sysctl.conf

sysctl.conf:
kernel.shmmax=708329472
kernel.shmall=44270592

postgresql.conf:
max_connections=500
shared_buffers=40000 # ~312MB, min. 1000, max ~ 83000

best regards,
Martin


Am Freitag, den 03.06.2005, 18:11 +1200 schrieb Mark Kirkwood:
> Paul McGarry wrote:
> 
> > Based on the powerpostgresql.com Performance Checklist [1]  and
> > Annotated Postgresql.conf [2] I understand that:
> > -I should have less than 1/3 of my total memory as shared_buffers
> > -For my server 15000 is a fairly reasonable starting point for
> > shared_buffers which is ~120MB
> > -I have 100 max_connections.
> > 
> > So I was going to set SHMMAX to 134217728 (ie 128 Meg)
> > 
> > What should SHMALL be?
> > 
> > The current system values are
> > [EMAIL PROTECTED]:~/data$ cat /proc/sys/kernel/shmmax
> > 33554432
> > [EMAIL PROTECTED]:~/data$ cat /proc/sys/kernel/shmall
> > 2097152
> > 
> > ie SHMALL seems to be 1/16 of SHMMAX
> > 
> 
> No - shmall is in 4k pages _ so this amounts to 8G! This is fine - 
> unless you wish to decrease it in order to prevent too many shared 
> memory applications running.
> 
> BTW - the docs have been amended for 8.1 to suggest shmmax=134217728 and 
> shmall=2097152 (was going to point you at them - but I cannot find them 
> on the Postgresql site anymore...).
> 
> There seems to be some longstanding confusion in the Linux community 
> about the units for shmall (some incorrect documentation from Oracle on 
> the issue does not help I am sure....) - to the point where I downloaded 
> kernel source to check (reproducing here):
> 
> 
> linux-2.6.11.1/include/linux/shm.h:13->
> 
> #define SHMMAX 0x2000000         /* max shared seg size (bytes) */
> #define SHMMIN 1             /* min shared seg size (bytes) */
> #define SHMMNI 4096          /* max num of segs system wide */
> #define SHMALL (SHMMAX/PAGE_SIZE*(SHMMNI/16)) /* max shm system wide 
> (pages) */
> #define SHMSEG SHMMNI
> 
> 
> Hope that helps
> 
> Best wishes
> 
> Mark


---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to