RFR: 8310031: Parallel: Implement better work distribution for large object arrays in old gen [v9]

Richard Reingruber rrich at openjdk.org
Wed Sep 27 10:05:14 UTC 2023


On Mon, 25 Sep 2023 11:29:14 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> I experimented with the aforementioned read-only card table idea a bit and here is the draft:
> https://github.com/openjdk/jdk/compare/master...albertnetymk:jdk:pgc-precise-obj-arr?expand=1

This looks very nice! The code is a lot easier to follow than the baseline and this pr.

With your draft I found out too that the regressions with just 2 threads come from the remaining `object_start` calls. Larger stripes mean fewer of them. The caching used in your draft is surly better.

So by default 1 card table byte per 512b card is needed. The shadow card table will require 2M per gigabyte used old generation. I guess that's affordable.

Would you think that your solution can be backported?

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

PR Comment: https://git.openjdk.org/jdk/pull/14846#issuecomment-1737093271


More information about the hotspot-gc-dev mailing list