Re: understanding postgres issues/bottlenecks

From: "David Rees" <drees76(at)gmail(dot)com>
To: "Stefano Nichele" <stefano(dot)nichele(at)gmail(dot)com>
Cc: "Merlin Moncure" <mmoncure(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org
Subject: Re: understanding postgres issues/bottlenecks
Date: 2009-01-06 23:33:09
Message-ID: 72dbd3150901061533o5f8601cau389ceaf0ad6840cd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Tue, Jan 6, 2009 at 11:02 AM, Stefano Nichele
<stefano(dot)nichele(at)gmail(dot)com> wrote:
> BTW, why did you said I/O bound ? Which are the parameters that highlight
> that ? Sorry for my ignorance....

In addition to the percentage of time spent in wait as Scott said, you
can also see the number of processes which are blocked (b column on
the left). Those are the processes which would like to run but are
waiting for IO to complete.

From your earlier vmstat output, you can see that often quite a large
number of processes were waiting on IO - 20-30 of them. This is
confirmed by your load average. Since you only have 6 spindles, during
those periods, request service latency was likely very high during
those periods.

Anyway, I would start with significantly increasing the amount of
memory you have allocated to shared_buffers.

32MB is _way_ too low. For a dedicated PostgreSQL machine with 4GB
RAM, 1GB going to be a lot closer to optimal, with the optimal setting
probably somewhere between 500MB and 2GB.

And please post the rest of the information that the others have asked for...

-Dave

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Frank Joerdens 2009-01-07 02:20:08 Re: Memory Allocation (8 GB shared buffer limit on Ubuntu Hardy)
Previous Message Scott Marlowe 2009-01-06 20:50:09 Re: understanding postgres issues/bottlenecks