RFR: 8320112 GenShen: Improve end of process report [v2]
William Kemper
wkemper at openjdk.org
Wed Nov 15 18:34:31 UTC 2023
On Tue, 14 Nov 2023 23:14:48 GMT, William Kemper <wkemper at openjdk.org> wrote:
>> When Shenandoah is shutdown, it logs a summary of its activity over the life of the process. This change adds percentages to the breakdown of the types and counts of cycles that executed. It also simplifies some of the logic around recording the various outcomes.
>
> William Kemper has updated the pull request incrementally with two additional commits since the last revision:
>
> - Reduce visibility of new methods
> - Fix accidental whitespace change
We had special handling for upgraded degen cycles because the handling was in the control thread's `service_stw_degenerated_cycle` function that didn't have direct knowledge of full GCs the same way `service_stw_full_cycle` did. With this change the special handling for upgraded cycles and the handling for regular full GCs has been consolidated in `ShenandoahFullGC`.
The `live-at-end-of-last-old-mark` is updated at the end of a full GC (no change here) and at the end of old marking (no change here either). The number of consecutive degenerated cycles is reset whenever a full GC or a concurrent GC completes.
I also discovered that upgraded degen cycles were not being counted as full GCs - which is perhaps a fix we should make upstream?
-------------
PR Comment: https://git.openjdk.org/shenandoah/pull/357#issuecomment-1813047868
More information about the shenandoah-dev
mailing list