Re: Patch: fix lock contention for HASHHDR.mutex
От | Aleksander Alekseev |
---|---|
Тема | Re: Patch: fix lock contention for HASHHDR.mutex |
Дата | |
Msg-id | 20151230160137.034371e0@fujitsu обсуждение исходный текст |
Ответ на | Re: Patch: fix lock contention for HASHHDR.mutex (Aleksander Alekseev <a.alekseev@postgrespro.ru>) |
Ответы |
Re: Patch: fix lock contention for HASHHDR.mutex
Re: Patch: fix lock contention for HASHHDR.mutex |
Список | pgsql-hackers |
Here is a clean version of the patch. Step 1 is an optimization. Step 2 refactors this: HTAB * ShmemInitHash(const char *name, /* table string name for shmem index */ - long init_size, /* initial table size */ + long init_size, /* initial table size XXX ignored, refactor! */ As I understand there is no performance degradation: Before ====== Core i7, pgbench -j 8 -c 8 -T 50 pgbench: ``` number of transactions actually processed: 14315 latency average: 27.945 ms latency stddev: 44.920 ms tps = 286.097043 (including connections establishing) tps = 286.127642 (excluding connections establishing) ``` 60-core server, pgbench -j 64 -c 64 -T 50 pgbench: ``` number of transactions actually processed: 176127 latency average: 18.162 ms latency stddev: 23.861 ms tps = 3521.069672 (including connections establishing) tps = 3522.166706 (excluding connections establishing) ``` After ===== Core i7, pgbench -j 8 -c 8 -T 50 pgbench: ``` number of transactions actually processed: 14212 latency average: 27.984 ms latency stddev: 43.250 ms tps = 284.038588 (including connections establishing) tps = 285.112772 (excluding connections establishing) ``` 60-core server, pgbench -j 64 -c 64 -T 50 pgbench: ``` number of transactions actually processed: 172135 latency average: 17.767 ms latency stddev: 22.692 ms tps = 3590.410302 (including connections establishing) tps = 3594.607165 (excluding connections establishing) ```
Вложения
В списке pgsql-hackers по дате отправления: