RFR: 8277814: ConcurrentRefineThread should report rate when deactivating

Thomas Schatzl tschatzl at openjdk.java.net
Fri Nov 26 11:34:05 UTC 2021


On Thu, 25 Nov 2021 04:24:23 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

> Please review this change to the logging by concurrent refinement threads.
> This change adds the cards processed per ms to the deactivation log message.
> 
> Testing:
> mach5 tier1
> locally ran a test with gc+refine=debug logging enabled and verified the
> expected change to the deactivation log message.

src/hotspot/share/gc/g1/g1ConcurrentRefineStats.cpp line 38:

> 36:   // Report 0 when no time recorded because no refinement performed.
> 37:   double secs = refinement_time().seconds();
> 38:   return (secs > 0) ? (refined_cards() / (secs * MILLIUNITS)) : 0.0;

Not sure how this is used, but in similar calculations we only use and return a value if the elapsed time is large enough (something like a microsecond or so) to remove extreme outliers. Not sure if that is needed here too.

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

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



More information about the hotspot-gc-dev mailing list