RFR: 8325259: Serial: Inline OldGenScanClosure during Young GC

Stefan Karlsson stefank at openjdk.org
Tue Feb 6 12:31:53 UTC 2024


On Mon, 5 Feb 2024 17:58:07 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> Simple inlining oop closure during card-scanning of young-gc.
> 
> Test: using the attached card-scanning-stressing benchmark, ~5x improvement (in terms of young-gc pause time) is observed on my box.

Changes requested by stefank (Reviewer).

src/hotspot/share/gc/serial/cardTableRS.cpp line 34:

> 32: #include "utilities/align.hpp"
> 33: 
> 34: void CardTableRS::younger_refs_in_space_iterate(TenuredSpace* sp) {

The "iterate" string in `younger_refs_in_space_iterate` alluded that this function was written as generic function with the code provided by a passed-in closure. Now that this function is locked down to be a scan function, I think the name should be changed. This applies to the callers as well.

src/hotspot/share/gc/serial/cardTableRS.hpp line 35:

> 33: class TenuredGeneration;
> 34: class TenuredSpace;
> 35: class OldGenScanClosure;

When possible, it's nice to keep the forwarding declarations sorted.

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

PR Review: https://git.openjdk.org/jdk/pull/17711#pullrequestreview-1865019008
PR Review Comment: https://git.openjdk.org/jdk/pull/17711#discussion_r1479697248
PR Review Comment: https://git.openjdk.org/jdk/pull/17711#discussion_r1479688927


More information about the hotspot-gc-dev mailing list