pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Arthurs <tarthurs@jobflash.com>
To: Donald Courtney <Donald.Courtney@Sun.COM>
Cc: pgsql-performance@postgresql.org
Subject: Re: Postgresql on an AMD64 machine
Date: Tue, 07 Jun 2005 13:39:04 -0700
Message-ID: <42A605E8.8040607@jobflash.com> (raw)
In-Reply-To: <42A6014C.30108@sun.com>
References: <1118080420.1644.23.camel@penguin1>
	<b918cf3d05060613593a73a18a@mail.gmail.com>
	<42A5F7B6.20502@sun.com>
	<42A5FB70.8090807@jobflash.com>
	<42A6014C.30108@sun.com>

Yes, shared buffers in postgres are not used for caching -- unlike 
Oracle.  Every time we hire an Oracle dba, I have to break them of the 
notion (which I shared when I started with postgres -- Josh Berkus and 
Josh Drake helped burst that bubble for me) :)

You should gain i/o reduction through increasing kernel buffers -- 
Postgresql counts on read/write caching through that, so increasing that 
should get your performance improvemnets -- though I haven't found the 
sweet spot there yet, for solaris.  My biggest challenge with 
solaris/sparc is trying to reduce context switching.

Donald Courtney wrote:
> Tom Arthurs wrote:
> 
>> According to my research, you only need a 64 bit image if you are 
>> going to be doing intensive floating point operations (which most db 
>> servers don't do).  Some benchmarking results I've found on the 
>> internet indicate that 64 bit executables can be slower than 32 bit 
>> versions. I've been running 32 bit compiles on solaris for several years.
>>
>> How much memory do you have on that sparc box?  Allocating more than 
>> about 7-12% to shared buffers has proven counter productive for us (it 
>> slows down).
>>
> The system has 8 CPUs w/ 32 GB - I'm hoping to see some benefit to large 
> caches -
> Am I missing something key with postgreSQL?
> Yes - we have seen with oracle 64 bit that there can be as much as a 10% 
> hit moving
> from 32 - but we make it up big time with large db-buffer sizes that 
> drastically
> reduce I/O and allow for other things (like more connections).  Maybe
> the expectation of less I/O is not correct?
> 
> Don
> 
> P.S.  built with the Snapshot from two weeks ago.
> 
>> Kernel buffers are another animal. :)
>>
>> Donald Courtney wrote:
>>
>>> Get FATAL when starting up (64 bit) with large shared_buffers setting
>>>
>>> I built a 64 bit for Sparc/Solaris easily but I found  that the
>>> startup of postmaster generates a FATAL diagnostic due to going
>>> over the 2GB limit (3.7 GB).
>>>
>>> When building for 64 bit is there some other
>>> things that must change in order to size UP the shared_buffers?
>>>
>>> Thanks.
>>>
>>> Don C.
>>>
>>> P.S.  A severe checkpoint problem I was having was fixed with
>>> "checkpoint_segments=200".
>>>
>>>
>>> Message:
>>>
>>> FATAL:  460000 is outside the valid range for parameter 
>>> "shared_buffers" (16 .. 262143)
>>> LOG:  database system was shut down at 2005-06-07 15:20:28 EDT
>>>
>>> Mike Rylander wrote:
>>>
>>>> On 06 Jun 2005 12:53:40 -0500, Mark Rinaudo <mark@bowmansystems.com> 
>>>> wrote:
>>>>  
>>>>
>>>>> I'm not sure if this is the appropriate list to post this question to
>>>>> but i'm starting with this one because it is related to the 
>>>>> performance
>>>>> of Postgresql server.  I have a Penguin Computing dual AMD 64 bit
>>>>> opteron machine with 8 Gigs of memory.  In my attempt to increase the
>>>>> number of shared_buffers from the default to 65000 i was running 
>>>>> into a
>>>>> semget error when trying to start Postgresql. After reading the
>>>>> documentation I adjusted the semaphore settings in the kernel to allow
>>>>> Postgresql to start successfully.  With this configuration running 
>>>>> if I
>>>>> do a ipcs -u i get the following.
>>>>>   
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On my HP-585, 4xOpteron, 16G RAM, Gentoo Linux (2.6.9):
>>>>
>>>> $ ipcs -u i
>>>>
>>>> ------ Shared Memory Status --------
>>>> segments allocated 1
>>>> pages allocated 34866
>>>> pages resident  31642
>>>> pages swapped   128
>>>> Swap performance: 0 attempts     0 successes
>>>>
>>>> ------ Semaphore Status --------
>>>> used arrays = 7
>>>> allocated semaphores = 119
>>>>
>>>> ------ Messages: Status --------
>>>> allocated queues = 0
>>>> used headers = 0
>>>> used space = 0 bytes
>>>>
>>>>
>>>> Did you perhaps disable spinlocks when compiling PG?
>>>>
>>>>  
>>>>
>>>
>>>
>>> ---------------------------(end of broadcast)---------------------------
>>> TIP 5: Have you checked our extensive FAQ?
>>>
>>>               http://www.postgresql.org/docs/faq
>>>
>>>
>>>
> 
> 
> 
> 



view thread (25+ messages)  latest in thread

Message-ID: <42A605E8.8040607@jobflash.com>
Permalink:  ../42A605E8.8040607@jobflash.com/
Also on:    postgresql.org/message-id/42A605E8.8040607@jobflash.com

 · 

reply

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: tarthurs@jobflash.com, Donald.Courtney@Sun.COM
  Subject: Re: Postgresql on an AMD64 machine
  In-Reply-To: <42A605E8.8040607@jobflash.com>

* 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