pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Jignesh K. Shah <J.K.Shah@Sun.COM>
To: Kevin Grittner <Kevin.Grittner@wicourts.gov>
Cc: pgsql-performance@postgresql.org
Subject: Re: Proposal of tunable fix for scalability of 8.4
Date: Wed, 11 Mar 2009 20:51:56 -0400
Message-ID: <49B85CAC.70807@sun.com> (raw)
In-Reply-To: <49B7F470.EE98.0025.0@wicourts.gov>
References: <49B824DD.7090302@sun.com>
	<49B7F470.EE98.0025.0@wicourts.gov>



On 03/11/09 18:27, Kevin Grittner wrote:
>>>> "Jignesh K. Shah" <J.K.Shah@Sun.COM> wrote: 
>>>>         
>> Rerunning similar tests on a 64-thread UltraSPARC T2plus based
>> server config
>>     
>  
>   
>> (IO is not a problem... all in RAM .. no disks):
>> Time:Users:Type:TPM: Response Time
>> 60: 100: Medium Throughput: 10552.000 Avg Medium Resp: 0.006
>> 120: 200: Medium Throughput: 22897.000 Avg Medium Resp: 0.006
>> 180: 300: Medium Throughput: 33099.000 Avg Medium Resp: 0.009
>> 240: 400: Medium Throughput: 44692.000 Avg Medium Resp: 0.007
>> 300: 500: Medium Throughput: 56455.000 Avg Medium Resp: 0.007
>> 360: 600: Medium Throughput: 67220.000 Avg Medium Resp: 0.008
>> 420: 700: Medium Throughput: 77592.000 Avg Medium Resp: 0.009
>> 480: 800: Medium Throughput: 87277.000 Avg Medium Resp: 0.011
>> 540: 900: Medium Throughput: 98029.000 Avg Medium Resp: 0.012
>> 600: 1000: Medium Throughput: 102547.000 Avg Medium Resp: 0.023
>>     
>  
> I'm wondering about the testing methodology.  If there is no I/O, I
> wouldn't expect performance to improve after you have all the CPU
> threads busy.  (OK, so there might be some brief blocking that would
> make the optimal number of connections somewhat above 64, but 1000???)
>  
> What's the bottleneck which allows additional connections to improve
> the throughput?  Network latency?
>  
> I'm a lot more interested in what's happening between 60 and 180 than
> over 1000, personally.  If there was a RAID involved, I'd put it down
> to better use of the numerous spindles, but when it's all in RAM it
> makes no sense.
>  
> -Kevin
>   


Kevin,

The problem is the CPUs are not all busy there is plenty of idle cycles 
since PostgreSQL ends up in situations where they are all waiting for 
lockacquires for exclusive.. In cases where there is say one cpu then 
waking up one or few waiters is more efficient.. However when you have 
64 or 128 or 256 (as in my case), waking up one waiter is inefficient 
since only one waiter will be allowed to run while other waiters will 
still wake up, spin acquire lock and say.. oh I am still not allowed and 
go back to speed..

Testing methology is considering we can get fast storage, can PostgreSQL 
still scale to use say 32, 64, 128, 256 cpus... I am just ahead of the 
curve of wide spread usage here probably but I want to make sure 
PostgreSQL is well tested already for it. And yes I still have plenty of 
unused CPU so the goal is to make sure if system can handle it, so can 
PostgreSQL.


Regards,
Jignesh

view thread (119+ messages)  latest in thread

Message-ID: <49B85CAC.70807@sun.com>
Permalink:  ../49B85CAC.70807@sun.com/
Also on:    postgresql.org/message-id/49B85CAC.70807@sun.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: J.K.Shah@Sun.COM, Kevin.Grittner@wicourts.gov
  Subject: Re: Proposal of tunable fix for scalability of 8.4
  In-Reply-To: <49B85CAC.70807@sun.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