pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Mark Kirkwood <mark.kirkwood@catalyst.net.nz>
To: Gavin Flower <GavinFlower@archidevsys.co.nz>
To: pgsql-performance@postgresql.org
Subject: Re: Survey: Max TPS you've ever seen
Date: Wed, 11 Feb 2015 13:31:15 +1300
Message-ID: <54DAA2D3.1000605@catalyst.net.nz> (raw)
In-Reply-To: <54D9269C.9080808@archidevsys.co.nz>
References: <CA+BNcWaAMKuXB0+rR51Ms7jMOhPtszGahWdZ7i5Eyw50c7mesQ@mail.gmail.com>
	<54D9269C.9080808@archidevsys.co.nz>
List-Unsubscribe:  <mailto:majordomo@postgresql.org?body=unsub%20pgsql-performance>

On 10/02/15 10:29, Gavin Flower wrote:
> On 10/02/15 08:30, Luis Antonio Dias de Sá Junior wrote:
>> Hi,
>>
>> A survay: with pgbench using TPS-B, what is the maximum TPS you're
>> ever seen?
>>
>> For me: 12000 TPS.
>>
>> --
>> Luis Antonio Dias de Sá Junior
> Important to specify:
>
> 1. O/S
> 2. version of PostgreSQL
> 3. PostgreSQL configuration
> 4. hardware configuration
> 5. anything else that might affect performance
>
> I suspect that Linux will out perform Microsoft on the same hardware,
> and optimum configuration for both O/S's...
>


Yes, exactly - and also the pgbench parameters:

- scale
- number of clients
- number of threads
- statement options (prepared or simple etc)
- length of test

We've managed to get 40000 to 60000 TPS on some pretty serious hardware:

- 60 core, 1 TB ram
- 16 SSD + 4 PCIe SSD storage
- Ubuntu 14.04
- Postgres 9.4 (beta and rc)

...with Postgres parameters customized:

- checkpoint_segments 1920
- checkpoint_completion_target 0.8
- wal_buffers  256MB
- wal_sync_method open_datasync
- shared_buffers 10GB
- max_connections 600
- effective_io_concurrency 10

..and finally pgbench parameters

- scale 2000
- clients 32, 64, 128, 256 (best results at 32 and 64 generally)
- threads = 1/2 client number
- prepared option
- 10 minute test run time

Points to note, we did *not* disable fsync or prevent buffers being 
actually written (common dirty tricks in benchmarks). However, as others 
have remarked - raw numbers mean little. Pgbench is very useful for 
testing how tuning configurations are helping (or not) for a particular 
hardware and software setup, but is less useful for answering the 
question "how many TPS can postgres do"...

Regards

Mark





-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance



view thread (9+ messages)  latest in thread

Message-ID: <54DAA2D3.1000605@catalyst.net.nz>
Permalink:  ../54DAA2D3.1000605@catalyst.net.nz/
Also on:    postgresql.org/message-id/54DAA2D3.1000605@catalyst.net.nz

 · 

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: mark.kirkwood@catalyst.net.nz, GavinFlower@archidevsys.co.nz
  Subject: Re: Survey: Max TPS you've ever seen
  In-Reply-To: <54DAA2D3.1000605@catalyst.net.nz>

* 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