RFR: 8227369: pd_disjoint_words_atomic() needs to be atomic [v2]

Aleksey Shipilev shade at openjdk.java.net
Wed Feb 23 07:51:48 UTC 2022


On Wed, 23 Feb 2022 05:38:34 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> Replace the common "atomic" switch+loop code chunks in the pd code with a shared version that uses Atomic::load/store.
>> 
>> See details in the bug report that show how current code is actually replaced by `memcpy` (in some places at least) whereas the new code is not.
>> 
>> Platforms affected:
>>  - all x86
>>  - Zero
>>  - Windows Aarch64
>>  - PPC
>> 
>> Testing: tiers 1-3
>> Additional builds: tiers 4 and 5
>>  - builds covered: x86 and Zero
>> 
>> GHA
>> - builds covered:  Windows-Aarch64
>> 
>> The only build affected and not tested is PPC. It would be great if someone could take this for a spin on PPC.
>> 
>> For platforms not affected by this change, i.e. those that already specialise the code, I make not claims regarding the atomicity or otherwise of those specialized versions. That would be for someone interested in those specific platforms to check out.
>> 
>> Thanks,
>> David
>
> David Holmes has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove underscore from name

Looks fine. There might be some performance implications to this, as IIRC this code gets called from GC copying, so some light benchmarking might be in order.

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

Marked as reviewed by shade (Reviewer).

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


More information about the hotspot-dev mailing list