RFR: 8261492: Shenandoah: reconsider forwardee accesses memory ordering [v2]

Aleksey Shipilev shade at openjdk.java.net
Tue Feb 16 10:26:06 UTC 2021


On Mon, 15 Feb 2021 11:58:18 GMT, Martin Doerr <mdoerr at openjdk.org> wrote:

>>> I guess the shenandoahBarrierSetAssembler_aarch64.cpp part you're changing is not very perfomance sensitive?
>> 
>> Yes, it is not supposed to be: CAS failure path when GC is relocating the objects.
>
> I'd prefer using load-consume with comment in assembly code and acquire in C++ code. That would be consistent with other code. But that's just my opinion. I'll leave the aarch64 maintainers free to decide.

All right, I added more discussion right in the code comments that hopefully makes the whole thing clearer. Re-running tests now with dirty AArch64 relaxed CAS patch, but we would need to get Andrew's fix for https://bugs.openjdk.java.net/browse/JDK-8261579 to properly estimate the performance impact.

-------------

PR: https://git.openjdk.java.net/jdk/pull/2496


More information about the shenandoah-dev mailing list