RFR: 8319373: Serial: Refactor dirty cards scanning during Young GC [v7]

Albert Mingkun Yang ayang at openjdk.org
Fri Nov 10 12:53:16 UTC 2023


> Reading the new code directly is probably easier. The structure is quite similar to its counterpart in Parallel.
> 
> It's mostly perf-neutral, except when dirty cards are scarce. Using `card_scan.java` in [JDK-8310031](https://bugs.openjdk.org/browse/JDK-8310031), I observed ~40% reduction in young-gc pause time with `stride = 32 * 64`.

Albert Mingkun Yang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 13 additional commits since the last revision:

 - review
 - Merge branch 'master' into s1-young-gc
 - review
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - Update src/hotspot/share/gc/serial/cardTableRS.cpp
   
   Co-authored-by: Thomas Schatzl <59967451+tschatzl at users.noreply.github.com>
 - ... and 3 more: https://git.openjdk.org/jdk/compare/9a3ec1ff...41439f4a

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/16492/files
  - new: https://git.openjdk.org/jdk/pull/16492/files/de18a885..41439f4a

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=16492&range=06
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=16492&range=05-06

  Stats: 16589 lines in 250 files changed: 4894 ins; 8175 del; 3520 mod
  Patch: https://git.openjdk.org/jdk/pull/16492.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16492/head:pull/16492

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


More information about the hotspot-gc-dev mailing list