RFR: 8295319: pending_cards_at_gc_start doesn't include cards in thread buffers [v3]

Kim Barrett kbarrett at openjdk.org
Thu Nov 3 23:36:31 UTC 2022


> Please review this change to G1 to include the per-thread buffers in the
> number of pending cards at the start of a young GC.
> 
> DCQS::concatenate_logs has been renamed to concatenate_logs_and_stats, and now
> also merges the per-thread refinement stats during the thread walk to flush
> buffers.  That replaces the separate thread walk to merge and record these
> stats earlier in the GC.  The merged stats and related info don't seem to be
> needed until after the buffer flushing.
> 
> Also, when abandoning dirty card buffers and stats because of a full GC, fixed
> to also abandon an buffers in the paused buffers lists.
> 
> Testing:
> mach5 tier1-3
> performance testing found no significant changes, as expected.

Kim Barrett has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits:

 - Merge branch 'master' into cards-in-threads
 - move per-thread dirty card log/stat concatenation earlier
 - move refinement stats collecting and recording

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

Changes: https://git.openjdk.org/jdk/pull/10914/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10914&range=02
  Stats: 107 lines in 7 files changed: 39 ins; 41 del; 27 mod
  Patch: https://git.openjdk.org/jdk/pull/10914.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10914/head:pull/10914

PR: https://git.openjdk.org/jdk/pull/10914


More information about the hotspot-gc-dev mailing list