Integrated: 8261838: Shenandoah: reconsider heap region iterators memory ordering

Aleksey Shipilev shade at openjdk.java.net
Thu Feb 18 15:53:41 UTC 2021


On Tue, 16 Feb 2021 19:13:03 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> We use CASes to distributed workers between regions. Hotspot's default for atomic operations is memory_order_conservative, which emits two-way memory fences around the CASes at least on AArch64 and PPC64.
> 
> This seems to be excessive for region distribution code, and "relaxed" is enough, since we don't piggyback memory ordering on these.
> 
> This also calls for some refactoring in the code itself.
> 
> Additional testing:
>  - [x] `hotspot_gc_shenandoah`
>  - [ ] Ad-hoc performance runs

This pull request has now been integrated.

Changeset: fd098e71
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/fd098e71
Stats:     24 lines in 4 files changed: 2 ins; 3 del; 19 mod

8261838: Shenandoah: reconsider heap region iterators memory ordering

Reviewed-by: rkennke

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

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



More information about the hotspot-gc-dev mailing list