From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Nathan Bossart <nathandbossart(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: optimize atomic exchanges |
Date: | 2023-12-01 03:56:27 |
Message-ID: | 20231201035627.7xke2qvec6p5lihy@awork3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 2023-11-30 21:18:15 -0600, Nathan Bossart wrote:
> On Wed, Nov 29, 2023 at 03:29:05PM -0600, Nathan Bossart wrote:
> > I haven't done any sort of performance testing on this yet. Some
> > preliminary web searches suggest that there is unlikely to be much
> > difference between cmpxchg and xchg, but presumably there's some difference
> > between xchg and doing cmpxchg in a while loop (as is done in
> > atomics/generic.h today). I'll report back once I've had a chance to do
> > some testing...
>
> Some rudimentary tests show a >40% speedup with this patch on x86_64.
On bigger machines, with contention, the wins are likely much higher. I see
two orders of magnitude higher throughput in a test program that I had around,
on a two socket cascade lake machine. Of course it's also much less
powerfull...
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Andrei Lepikhov | 2023-12-01 03:57:51 | Re: Custom explain options |
Previous Message | shveta malik | 2023-12-01 03:19:09 | Re: Synchronizing slots from primary to standby |