On 07/01/2014 01:08 PM, Andres Freund wrote:
> Hi,
>
> Over at -performance Mark Kirkwood tested a recent version of this
> (http://archives.postgresql.org/message-id/53B283F3.7020005%40catalyst.net.nz)
> . I thought it's interesting to add the numbers to this thread:
>
>> Test: pgbench
>> Options: scale 500
>> read only
>> Os: Ubuntu 14.04
>> Pg: 9.3.4
>> Pg Options:
>> max_connections = 200
>> shared_buffers = 10GB
>> maintenance_work_mem = 1GB
>> effective_io_concurrency = 10
>> wal_buffers = 32MB
>> checkpoint_segments = 192
>> checkpoint_completion_target = 0.8
>>
>>
>> Results
>>
>> Clients | 9.3 tps 32 cores | 9.3 tps 60 cores
>> --------+------------------+-----------------
>> 6 | 70400 | 71028
>> 12 | 98918 | 129140
>> 24 | 230345 | 240631
>> 48 | 324042 | 409510
>> 96 | 346929 | 120464
>> 192 | 312621 | 92663
>>
>> So we have anti scaling with 60 cores as we increase the client connections.
>> Ouch! A level of urgency led to trying out Andres's 'rwlock' 9.4 branch [1]
>> - cherry picking the last 5 commits into 9.4 branch and building a package
>> from that and retesting:
>>
>> Clients | 9.4 tps 60 cores (rwlock)
>> --------+--------------------------
>> 6 | 70189
>> 12 | 128894
>> 24 | 233542
>> 48 | 422754
>> 96 | 590796
>> 192 | 630672
>
> Now, this is a bit of a skewed comparison due to 9.4 vs. 9.3 but still
> interesting.
It looks like the issue I reported here:
http://www.postgresql.org/message-id/5190E17B.9060804@vmware.com
fixed by this commit:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=b03d196be055450c7260749f17347c2d066b4254.
So, definitely need to compare plain 9.4 vs patched 9.4, not 9.3.
- Heikki