Anyone interested in improving postgresql scaling?

Kevin Way kevin at insidesystems.net
Tue Apr 10 04:48:02 UTC 2007


Kris Kennaway wrote:
> If so, then your task is the following:
>
> Make SYSV semaphores less dumb about process wakeups.  Currently
> whenever the semaphore state changes, all processes sleeping on the
> semaphore are woken, even if we only have released enough resources
> for one waiting process to claim.  i.e. there is a thundering herd
> wakeup situation which destroys performance at high loads.  Fixing
> this will involve replacing the wakeup() calls with appropriate
> amounts of wakeup_one().
Could this cause problem cause a situation where an 8-Core system was 
50-75% slower than an otherwise equivalent 2-Core system?

I have a graph of my sysbench/pgsql results here:

    http://blog.insidesystems.net/files/sysctl-pgsq-amd64-wtf.png

As the graph shows, the 8-core system is about half the speed of the 
2-core system at 2 simultaneous threads, and it decays down to 
approximately 1/4 the speed of the 2-core system as the # of threads hits 5.

All other (non-pgsql, non-sysv) tests came back approximately as 
expected, but I'm left wondering if I did something wrong, or if 8 cpus 
are slower than 2, when it comes to Postgres on currently available FreeBSD.

Kevin Way
Inside Systems, Inc.

(Full detail of what I did is available at: 
http://blog.insidesystems.net/articles/2007/04/09/what-did-i-do-wrong )
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 4478 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.freebsd.org/pipermail/freebsd-performance/attachments/20070410/baeeef66/smime.bin


More information about the freebsd-performance mailing list