RFR: 8327000: GenShen: Integrate updated Shenandoah implementation of FreeSet into GenShen [v8]

Y. Srinivas Ramakrishna ysr at openjdk.org
Wed Jun 19 01:33:26 UTC 2024


On Thu, 13 Jun 2024 22:22:01 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

>> The mainline implementation of ShenandoahFreeSet was recently updated.  This PR integrates the upstream changes
>> into Generational Shenandoah.
>
> Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Minor refinements to test programs
>   
>   TestAllocIntArrays: comments to explain behavior.
>   TestOldGrowthTriggers: reduce the number of loop iterations so this test
>   will not time out on less powerful test platforms.

src/hotspot/share/gc/shenandoah/shenandoahFreeSet.cpp line 1419:

> 1417: }
> 1418: 
> 1419: void ShenandoahFreeSet::move_regions_from_collector_to_mutator(size_t max_xfer_regions) {

This method has 3 isomorphic loops. I wonder if it might read better to extract a separate work method for the loop and invoke it thrice from this method with appropriate parms. Also I'd advise using a local variable to countdown the regions to be transferred rather than modifying the method's input parm.

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

PR Review Comment: https://git.openjdk.org/shenandoah/pull/440#discussion_r1645277383


More information about the shenandoah-dev mailing list