From: | Peter Geoghegan <pg(at)bowt(dot)ie> |
---|---|
To: | Floris Van Nee <florisvannee(at)optiver(dot)com> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de> |
Subject: | Re: Delaying/avoiding BTreeTupleGetNAtts() call within _bt_compare() |
Date: | 2020-02-19 02:14:24 |
Message-ID: | CAH2-Wzkx0RJy1kUXFF9Vwhgezoio8shUbFf5gqAUpHpxBi3zVw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Feb 10, 2020 at 1:05 AM Floris Van Nee <florisvannee(at)optiver(dot)com> wrote:
> I ran all the tests on two different machines, several times for 1 hour each time. I'm still having a hard time getting reliable results for the 30 clients case though. I'm pretty certain the patches bring a performance benefit, but how high exactly is difficult to say. As for applying only patch 1+2 or all three patches - I found no significant difference between these two cases. It looks like all the performance benefit is in the first two patches.
Attached is v3, which no longer includes the third patch/optimization.
It also inlines (in the second patch) by marking the _bt_compare
definition as inline, while not changing anything in nbtree.h. I
believe that this is portable C99 -- let's see what CF Tester thinks
of it.
I'm going to test this myself. It would be nice if you could repeat
something like the previous experiments with v3, Floris. master vs v3
(both patches together). With a variable number of clients.
Thanks
--
Peter Geoghegan
Attachment | Content-Type | Size |
---|---|---|
v3-0002-Inline-_bt_compare.patch | application/octet-stream | 756 bytes |
v3-0001-Avoid-pipeline-stall-in-_bt_compare.patch | application/octet-stream | 1.7 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Langote | 2020-02-19 02:22:07 | Re: pg_stat_progress_basebackup - progress reporting for pg_basebackup, in the server side |
Previous Message | Craig Ringer | 2020-02-19 01:39:16 | Re: PL/Python - lifetime of variables? |