Re: 9.4 -> 9.5 regression with queries through pgbouncer on RHEL 6

Поиск
Список
Период
Сортировка
От Vladimir Borodin
Тема Re: 9.4 -> 9.5 regression with queries through pgbouncer on RHEL 6
Дата
Msg-id 6BAA723F-A20E-4375-9C77-0C300CC4ADD9@simply.name
обсуждение исходный текст
Ответ на Re: 9.4 -> 9.5 regression with queries through pgbouncer on RHEL 6  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers

28 мая 2016 г., в 0:56, Andres Freund <andres@anarazel.de> написал(а):

Hi,


On 2016-05-27 19:57:34 +0300, Vladimir Borodin wrote:
-performance
Here is how the results look like for 9.4, 9.5 and 9.6. All are built from latest commits on yesterday in
* REL9_4_STABLE (a0cc89a28141595d888d8aba43163d58a1578bfb),
* REL9_5_STABLE (e504d915bbf352ecfc4ed335af934e799bf01053),
* master (6ee7fb8244560b7a3f224784b8ad2351107fa55d).

All of them are build on the host where testing is done (with stock gcc versions). Sysctls, pgbouncer config and everything we found are the same, postgres configs are default, PGDATA is in tmpfs. All numbers are reproducible, they are stable between runs.

Shortly:

OS PostgreSQL version TPS Avg. latency
RHEL 6 9.4 44898 1.425 ms
RHEL 6 9.5 26199 2.443 ms
RHEL 6 9.5 43027 1.487 ms
Ubuntu 14.04 9.4 67458 0.949 ms
Ubuntu 14.04 9.5 64065 0.999 ms
Ubuntu 14.04 9.6 64350 0.995 ms

The results above are not really fair, pgbouncer.ini was a bit different on Ubuntu host (application_name_add_host was disabled). Here are the right results with exactly the same configuration:

OS PostgreSQL version TPS Avg. latency
RHEL 6 9.4 44898 1.425 ms
RHEL 6 9.5 26199 2.443 ms
RHEL 6 9.5 43027 1.487 ms
Ubuntu 14.04 9.4 45971 1.392 ms
Ubuntu 14.04 9.5 40282 1.589 ms
Ubuntu 14.04 9.6 45410 1.409 ms

Hm. I'm a bit confused. You show one result for 9.5 with bad and one
with good performance. I suspect the second one is supposed to be a 9.6?

No, they are both for 9.5. One of them is on RHEL 6 host, another one on Ubuntu 14.04.


Am I understanding correctly that the performance near entirely
recovered with 9.6?

Yes, 9.6 is much better than 9.5.

If so, I suspect we might be dealing with a memory
alignment issue. Do the 9.5 results change if you increase
max_connections by one or two (without changing anything else)?

Results with max_connections=100:

OS Version TPS Avg. latency
RHEL 6 9.4 69810 0.917
RHEL 6 9.5 35303 1.812
RHEL 6 9.6 71827 0.891
Ubuntu 14.04 9.4 76829 0.833
Ubuntu 14.04 9.5 67574 0.947
Ubuntu 14.04 9.6 79200 0.808

Results with max_connections=101:

OS Version TPS Avg. latency
RHEL 6 9.4 70059 0.914
RHEL 6 9.5 35979 1.779
RHEL 6 9.6 71183 0.899
Ubuntu 14.04 9.4 78934 0.811
Ubuntu 14.04 9.5 67803 0.944
Ubuntu 14.04 9.6 79624 0.804


Results with max_connections=102:

OS Version TPS Avg. latency
RHEL 6 9.4 70710 0.905
RHEL 6 9.5 36615 1.748
RHEL 6 9.6 69742 0.918
Ubuntu 14.04 9.4 76356 0.838
Ubuntu 14.04 9.5 66814 0.958
Ubuntu 14.04 9.6 78528 0.815

Doesn’t seem that it is a memory alignment issue. Also please note that there is no performance degradation when connections from pgbench to postgres are established without pgbouncer:

OS Version TPS Avg. latency
RHEL 6 9.4 167427 0.382
RHEL 6 9.5 223674 0.286
RHEL 6 9.6 215580 0.297
Ubuntu 14.04 9.4 176659 0.362
Ubuntu 14.04 9.5 248277 0.258
Ubuntu 14.04 9.6 245871 0.260


What's the actual hardware?

Host with RHEL has Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz (2 sockets, 16 physical cores, 32 cores with Hyper-Threading) and 256 GB of RAM while host with Ubuntu has Intel(R) Xeon(R) CPU E5-2667 v2 @ 3.30GHz (2 sockets, 16 physical cores, 32 cores with Hyper-Threading) and 128 GB of RAM.


Greetings,

Andres Freund


--
May the force be with you…

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andrew Gierth
Дата:
Сообщение: Re: Re: Request for Patch Feedback: Lag & Lead Window Functions Can Ignore Nulls
Следующее
От: David Fetter
Дата:
Сообщение: PostgreSQL Weekly News Survey