From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | "Zidenberg, Tsahi" <tsahee(at)amazon(dot)com> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [PATCH] audo-detect and use -moutline-atomics compilation flag for aarch64 |
Date: | 2020-07-24 01:17:07 |
Message-ID: | 20200724011707.um3qe2pbnydvla45@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 2020-07-01 15:40:38 +0000, Zidenberg, Tsahi wrote:
> Outline-atomics is a gcc compilation flag that adds runtime detection
> of weather or not the cpu supports atomic instructions. CPUs that
> don't support atomic instructions will use the old
> load-exclusive/store-exclusive instructions. If a different
> compilation flag defined an architecture that unconditionally supports
> atomic instructions (e.g. -march=armv8.2), the outline-atomic flag
> will have no effect.
Sounds attractive.
> The patch was tested to improve pgbench simple-update by 10% and
> sysbench write-only by 3% on a 64-core armv8.2 machine (AWS
> m6g.16xlarge). Select-only and read-only benchmarks were not
> significantly affected, and neither was performance on a 16-core
> armv8.0 machine that does not support atomic instructions (AWS
> a1.4xlarge).
What does "not significantly affected" exactly mean? Could you post the
raw numbers? I'm a bit concerned that the additional conditional
branches on platforms without non ll/sc atomics could hurt noticably.
I'm surprised that read-only didn't benefit - with ll/sc that ought to
have pretty high contention on a few lwlocks.
Could you post the numbers?
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Tomas Vondra | 2020-07-24 01:22:48 | Re: Default setting for enable_hashagg_disk |
Previous Message | Andres Freund | 2020-07-24 01:11:43 | Re: Improving connection scalability: GetSnapshotData() |