Re: Buffers and MacOS X

From: Jeffrey Bohmer <bohmer(at)visionlink(dot)org>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Buffers and MacOS X
Date: 2002-10-21 16:08:52
Message-ID: p04330100b9d9d4e35e84@[192.168.1.201]
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

>Tom Lane wrote:
>> Hunter Hillegas <lists(at)lastonepicked(dot)com> writes:
>> > We are installing postgres on a MacOS X Server...
>> > On our Linux box, we had to muddle with some parameters to be able to
>> > increase the shared memory and buffers in postgres.
>> > Does anyone know how to do this in OS X? Or is it required?
>>
>> In OS X 10.1, the max shared memory was a hardwired number that couldn't
>> be changed without recompiling the kernel --- and the standard setting
>> was none too darn large, either :-(. I dunno if Apple has improved
>> matters in 10.2.
>
>I was going to point him to the development docs, but I see no mention
>of OSX shared kernel limit tuning in there at all. Can someone submit
>info to beef it up for OSX?

Here are instructions for setting shared memory limits on Mac OS X 10.2.

Edit the file:

/System/Library/StartupItems/SystemTuning/SystemTuning

Near the bottom, you will see these lines:

sysctl -w kern.sysv.shmmax=4194304
sysctl -w kern.sysv.shmmin=1
sysctl -w kern.sysv.shmmni=32
sysctl -w kern.sysv.shmseg=8
sysctl -w kern.sysv.shmall=1024

These parameters are described in this document:

http://www.postgresql.org/idocs/index.php?kernel-resources.html

OS X is simialar to BSD/OS in the values for each parameter. For my system, I want PostgreSQL to use 128MB worth of buffers. I used the calculations provided in the "Reasonable Values" column of the parameters table in the document above.

So here are my settings (allowing a little extra room):

sysctl -w kern.sysv.shmmax=167772160 # bytes
sysctl -w kern.sysv.shmmin=1
sysctl -w kern.sysv.shmmni=32
sysctl -w kern.sysv.shmseg=8
sysctl -w kern.sysv.shmall=65536 # 4K pages

Now, I can set shared_buffers in postgresql.conf to:

shared_buffers = 16384 # number of buffers, 8K each

- Jeff
--

Jeff Bohmer
VisionLink, Inc.
_________________________________
303.402.0170
www.visionlink.org
_________________________________
People. Tools. Change. Community.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message marco ghidinelli 2002-10-21 16:09:10 cannot add "not null" to an existing table
Previous Message Tom Lane 2002-10-21 16:02:42 Re: [GENERAL] Security implications of (plpgsql) functions

Browse pgsql-hackers by date

  From Date Subject
Next Message Joe Conway 2002-10-21 16:20:36 Re: [GENERAL] Security implications of (plpgsql) functions
Previous Message Tom Lane 2002-10-21 16:02:42 Re: [GENERAL] Security implications of (plpgsql) functions