[aarch64-port-dev ] AArch64: Neoverse N1 atomic operations and -moutline-atomics
Nick Gasson
nick.gasson at arm.com
Mon May 18 07:10:57 UTC 2020
On 05/05/20 19:40 pm, Andrew Haley wrote:
> On 5/5/20 12:32 PM, Andrew Haley wrote:
>> This is, as you can see, horrible, but but thankfully we don't have to
>> change AArch64 HotSpot because we use GCC's atomic builtins everywhere
>> in C++ code. All we'll have to do is compile HotSpot with a new GCC
>> and we'll be done.
>
> Having said that, we should fix the AArch64 HotSpot build so that we
> use the -moutline-atomics option whenever it's available.
I've done some profiling of SPECjbb on N1. Building with
-moutline-atomics gives around +4% on critical-jOPS and +0.2% on
max-jOPS averaged over several runs. However enabling this globally will
cause a slight regression on machines that don't support the LSE
extension due to the overhead of the function call and branch (~1% for
critical-jOPS on one machine).
Question is whether it's best to enable this by default in OpenJDK or
leave it to downstream distributions to decide?
--
Nick
More information about the aarch64-port-dev
mailing list