Integrated: 8283368: G1: Remove G1SegmentedArraySegment MEMFLAGS template parameter

Ivan Walulya iwalulya at openjdk.java.net
Fri Mar 25 09:44:48 UTC 2022


On Mon, 21 Mar 2022 14:02:32 GMT, Ivan Walulya <iwalulya at openjdk.org> wrote:

> Hi all,
> 
> Please review this change to remove the MEMFLAGS template parameter for G1SegmentedArraySegment and make it a runtime configuration parameter. This reduces on the code bloat due to templating because many of the methods in G1SegmentedArraySegment are independent of the template parameter.
> 
> To achieve this we added factory methods for handling allocation and deallocation. Having the factory methods allows us to embed the array data with the G1SegmentedArraySegment struct thus limiting the allocation to a single allocation as well as the deallocation. One upside to this approach is that we limit the allocation and deallocation overheads. 
> 
> Thanks
> Ivan

This pull request has now been integrated.

Changeset: 70648a6a
Author:    Ivan Walulya <iwalulya at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/70648a6a153e5d321f78cf6445a9703f41083725
Stats:     583 lines in 9 files changed: 271 ins; 239 del; 73 mod

8283368: G1: Remove G1SegmentedArraySegment MEMFLAGS template parameter

Reviewed-by: tschatzl, ayang

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

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



More information about the hotspot-gc-dev mailing list