Re: Proposed fix for NOTIFY performance degradation
Simon Riggs <simon@2ndquadrant.com>
From: Simon Riggs <simon@2ndQuadrant.com>
To: Gianni Ciolli <gianni.ciolli@2ndquadrant.it>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2011-04-24T22:59:17Z
Lists: pgsql-hackers
On Sat, Apr 23, 2011 at 2:57 PM, Gianni Ciolli
<gianni.ciolli@2ndquadrant.it> wrote:
> * "avg_usec" denotes the average time in microseconds required by each
> NOTIFY statement.
>
> h2. Test 1 - PostgreSQL HEAD
>
> n | m | iter | avg_usec
> -------+-------+------+----------
> 10 | 1 | 10 | 43.730
> 100 | 1 | 10 | 37.630
> 1000 | 1 | 10 | 42.990
> 10000 | 1 | 10 | 36.225
> 10 | 10 | 10 | 43.960
> 100 | 100 | 10 | 46.537
> 1000 | 1000 | 10 | 126.115
> 10000 | 10000 | 10 | 906.501
I read that wrong first time around. So the wasted time from duplicate checks is
n | m | iter | msec
-------+-------+------+----------
10 | 10 | 10 | 0
100 | 100 | 10 | 0.3
1000 | 1000 | 10 | 80
10000 | 10000 | 10 | 8600
So the cost of the duplicate checks only kicks in at about 200 notifies.
--
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services