RFR: 8240872: Shenandoah: Avoid updating new regions from start of evacuation
Roman Kennke
rkennke at redhat.com
Wed Mar 11 17:08:33 UTC 2020
Hi Aleksey,
On 3/11/20 2:34 PM, Aleksey Shipilev wrote:
> On 3/11/20 1:52 PM, Roman Kennke wrote:
>> Also, I wonder if we should not use the safe-iteration-limit here, but
>> rather have a fast lookup-table like we do for TAMS. Again, it is not
>> really relevant here, but the arraycopy follow-up will check the limit
>> on the mid-path of the arraycopy-barrier. WDYT?
>
> I'd prefer to introduce that check when arraycopy shortcut s in place.
Ok, I am taking it out.
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8240872
>> Webrev:
>> http://cr.openjdk.java.net/~rkennke/JDK-8240872/webrev.00/
>
> The patch is okay.
>
> Do we really need to care about is_trash() during final mark? Those regions would be recycled soon
> anyway.
Good you mention that. It was actually wrong and covered up the fact
that the watermark is not reset properly on ShHeapRegion::recycle(). I
fixed that now.
> I do wonder if we want to introduce the proper field in ShHeapRegion, rather than hijacking
> Space::concurrent_iteration_safe_limit, though. It becomes even more necessary since the meaning of
> it changes with this patch. This thing is more like "update_watermark" or some such.
Yes, I agree. Done.
I also removed a suspicious (but, afaict pointless) update of the
watermark in mark-compact.
http://cr.openjdk.java.net/~rkennke/JDK-8240872/webrev.01/
Roman
More information about the shenandoah-dev
mailing list