RFR: 8372861: Genshen: Override parallel_region_stride of ShenandoahResetBitmapClosure to a reasonable value for better parallelism [v2]
Xiaolong Peng
xpeng at openjdk.org
Wed Dec 3 00:16:10 UTC 2025
On Tue, 2 Dec 2025 23:24:11 GMT, Xiaolong Peng <xpeng at openjdk.org> wrote:
>> Maybe amend the comment to explain that using a smaller value yields better task distribution for a lumpy workload like resetting bitmaps?
>
> I have added more comments on ShenandoahResetBitmapClosure and the base class.
>Can we make this change more "generic"?
I thought about making it more "generic", the current design with new method `parallel_region_stride` make it possible to customize the behavior if needed.
I was looking into other closures which may have similar problems but impact should be much smaller than this one:
1. ShenandoahMergeWriteTable: Copy the write-version of the card-table into the read-version, clearing the write-copy, only for old gen.
2. ShenandoahEnsureHeapActiveClosure: Make sure regions are in good state: committed, active, clean, it may commit region if the region is not committed. Only in FullGC, also it is not threa-safe(but should be)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28613#discussion_r2583186822
More information about the shenandoah-dev
mailing list