Thread: Performance drop after upgrading to 8.4.4?

Performance drop after upgrading to 8.4.4?

From
Max Williams
Date:

Hi,

I was doing some benchmarking while changing configuration options to try to get more performance out of our postgresql servers and noticed that when running pgbench against 8.4.3 vs 8.4.4 on identical hardware and configuration there is a large difference in performance. I know tuning is a very deep topic and benchmarking is hardly an accurate indication of real world performance but I was still surprised by these results and wanted to know what I am doing wrong.

 

Hardware specs are:

2x Quad core Xeons 2.4Ghz

16GB RAM

2x RAID1 7.2k RPM disks

 

Relevant Postgresql Configuration:

max_connections = 1000

shared_buffers = 4096MB

temp_buffers = 8MB

max_prepared_transactions = 1000

work_mem = 8MB

maintenance_work_mem = 512MB

wal_buffers = 8MB

checkpoint_segments = 192

checkpoint_timeout = 30min

effective_cache_size = 12288MB

 

Results for the 8.4.3 (8.4.3-2PGDG.el5) host:

[root@some-host ~]# pgbench -h dbs3 -U postgres -i -s 100 pgbench1 > /dev/null 2>&1 && pgbench -h dbs3 -U postgres -c 100 -t 100000 pgbench1

starting vacuum...end.

transaction type: TPC-B (sort of)

scaling factor: 100

query mode: simple

number of clients: 100

number of transactions per client: 100000

number of transactions actually processed: 10000000/10000000

tps = 4612.734318 (including connections establishing)

tps = 4613.308264 (excluding connections establishing)

 

Results for the 8.4.4 (8.4.4-1PGDG.el5) host:

[root@ some-host ~]# pgbench -h dbs4 -U postgres -i -s 100 pgbench1 > /dev/null 2>&1 && pgbench -h dbs4 -U postgres -c 100 -t 100000 pgbench1

starting vacuum...end.

transaction type: TPC-B (sort of)

scaling factor: 100

query mode: simple

number of clients: 100

number of transactions per client: 100000

number of transactions actually processed: 10000000/10000000

tps = 2799.134267 (including connections establishing)

tps = 2799.451407 (excluding connections establishing)

 

Any input? I can reproduce these numbers consistently. By the way, I am a new postgresql user so my experience is limited.

Cheers,

Max

Re: Performance drop after upgrading to 8.4.4?

From
Max Williams
Date:

No one has had this problem??? Should I perhaps direct this to the developers list?

Cheers,

Max

 

From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Max Williams
Sent: 03 June 2010 14:22
To: pgsql-general@postgresql.org
Subject: [GENERAL] Performance drop after upgrading to 8.4.4?

 

Hi,

I was doing some benchmarking while changing configuration options to try to get more performance out of our postgresql servers and noticed that when running pgbench against 8.4.3 vs 8.4.4 on identical hardware and configuration there is a large difference in performance. I know tuning is a very deep topic and benchmarking is hardly an accurate indication of real world performance but I was still surprised by these results and wanted to know what I am doing wrong.

 

Hardware specs are:

2x Quad core Xeons 2.4Ghz

16GB RAM

2x RAID1 7.2k RPM disks

 

Relevant Postgresql Configuration:

max_connections = 1000

shared_buffers = 4096MB

temp_buffers = 8MB

max_prepared_transactions = 1000

work_mem = 8MB

maintenance_work_mem = 512MB

wal_buffers = 8MB

checkpoint_segments = 192

checkpoint_timeout = 30min

effective_cache_size = 12288MB

 

Results for the 8.4.3 (8.4.3-2PGDG.el5) host:

[root@some-host ~]# pgbench -h dbs3 -U postgres -i -s 100 pgbench1 > /dev/null 2>&1 && pgbench -h dbs3 -U postgres -c 100 -t 100000 pgbench1

starting vacuum...end.

transaction type: TPC-B (sort of)

scaling factor: 100

query mode: simple

number of clients: 100

number of transactions per client: 100000

number of transactions actually processed: 10000000/10000000

tps = 4612.734318 (including connections establishing)

tps = 4613.308264 (excluding connections establishing)

 

Results for the 8.4.4 (8.4.4-1PGDG.el5) host:

[root@ some-host ~]# pgbench -h dbs4 -U postgres -i -s 100 pgbench1 > /dev/null 2>&1 && pgbench -h dbs4 -U postgres -c 100 -t 100000 pgbench1

starting vacuum...end.

transaction type: TPC-B (sort of)

scaling factor: 100

query mode: simple

number of clients: 100

number of transactions per client: 100000

number of transactions actually processed: 10000000/10000000

tps = 2799.134267 (including connections establishing)

tps = 2799.451407 (excluding connections establishing)

 

Any input? I can reproduce these numbers consistently. By the way, I am a new postgresql user so my experience is limited.

Cheers,

Max

Re: Performance drop after upgrading to 8.4.4?

From
Greg Smith
Date:
Max Williams wrote:
>
> No one has had this problem??? Should I perhaps direct this to the
> developers list?
>

pgsql-performance is the list you should have sent this to.  There are
several people who are subscribed to that one but not to -general or
-hackers who enjoy helping with this particular type of problem.  Make
sure you include your operating system and disk controller information
on that one, I wasn't sure where to start without those two bits of info.

Also, see if the problem goes away if the client load is smaller.  Peak
pgbench performance on  your system is going to be with between 8 and 16
clients, and the way it falls off after that depends on operating
systems issues rather than PostgreSQL ones.

--
Greg Smith  2ndQuadrant US  Baltimore, MD
PostgreSQL Training, Services and Support
greg@2ndQuadrant.com   www.2ndQuadrant.us


Re: Performance drop after upgrading to 8.4.4?

From
Merlin Moncure
Date:
On Thu, Jun 3, 2010 at 9:22 AM, Max Williams <Max.Williams@mflow.com> wrote:
> Hi,
>
> I was doing some benchmarking while changing configuration options to try to
> get more performance out of our postgresql servers and noticed that when
> running pgbench against 8.4.3 vs 8.4.4 on identical hardware and
> configuration there is a large difference in performance. I know tuning is a
> very deep topic and benchmarking is hardly an accurate indication of real
> world performance but I was still surprised by these results and wanted to
> know what I am doing wrong.
>
>
>
> Hardware specs are:
>
> 2x Quad core Xeons 2.4Ghz
>
> 16GB RAM
>
> 2x RAID1 7.2k RPM disks
>
>
>
> Relevant Postgresql Configuration:
>
> max_connections = 1000
>
> shared_buffers = 4096MB
>
> temp_buffers = 8MB
>
> max_prepared_transactions = 1000
>
> work_mem = 8MB
>
> maintenance_work_mem = 512MB
>
> wal_buffers = 8MB
>
> checkpoint_segments = 192
>
> checkpoint_timeout = 30min
>
> effective_cache_size = 12288MB
>
>
>
> Results for the 8.4.3 (8.4.3-2PGDG.el5) host:
>
> [root@some-host ~]# pgbench -h dbs3 -U postgres -i -s 100 pgbench1 >
> /dev/null 2>&1 && pgbench -h dbs3 -U postgres -c 100 -t 100000 pgbench1
>
> starting vacuum...end.
>
> transaction type: TPC-B (sort of)
>
> scaling factor: 100
>
> query mode: simple
>
> number of clients: 100
>
> number of transactions per client: 100000
>
> number of transactions actually processed: 10000000/10000000
>
> tps = 4612.734318 (including connections establishing)
>
> tps = 4613.308264 (excluding connections establishing)
>
>
>
> Results for the 8.4.4 (8.4.4-1PGDG.el5) host:
>
> [root@ some-host ~]# pgbench -h dbs4 -U postgres -i -s 100 pgbench1 >
> /dev/null 2>&1 && pgbench -h dbs4 -U postgres -c 100 -t 100000 pgbench1
>
> starting vacuum...end.
>
> transaction type: TPC-B (sort of)
>
> scaling factor: 100
>
> query mode: simple
>
> number of clients: 100
>
> number of transactions per client: 100000
>
> number of transactions actually processed: 10000000/10000000
>
> tps = 2799.134267 (including connections establishing)
>
> tps = 2799.451407 (excluding connections establishing)
>
>
>
> Any input? I can reproduce these numbers consistently. By the way, I am a
> new postgresql user so my experience is limited.

nothing jumps out to me in terms of the release notes.   any chance of
getting some oprofile runs?

merlin