RFR: Enhancements for Shenandoah's generational mode [v7]
Aleksey Shipilev
shade at openjdk.org
Fri Mar 31 08:05:51 UTC 2023
On Thu, 30 Mar 2023 23:43:29 GMT, William Kemper <wkemper at openjdk.org> wrote:
>> During the course of the development of the generational mode for Shenandoah, we have found this tool useful to demonstrate progress and changes in behavior. We have also found this tool useful for troubleshooting performance issues and debugging crashes. There are many changes here, but these are the highlights:
>> * The age and affiliation of a region are encoded in the border and shape of the region (respectively).
>> * Phases are encoded with different colors for different generations and whether they have degenerated.
>> * A mechanism to record and replay session has been added (record feature is implemented in hotspot and is not yet upstream).
>> * Popup windows can be opened for additional detail on regions, as well as their history.
>> * The legend shows the number of regions in the state described by the legend item.
>> * Visualizer can now 'find' VMs running Shenandoah with region sampling enabled.
>>
>> Many months ago we broke backward compatibility on our branch, but we have recently restored it so the time seems right for a PR. Thank you for looking and sorry for the massive number of changes.
>
> William Kemper has updated the pull request incrementally with eight additional commits since the last revision:
>
> - Remove extra whitespace
> - Improve handling of interrupted exception
> - Use more idiomatic pattern for iterating over lines in a file
> - Improve encapsulation of DataConnector's threading
> - Use idiomatic case conventions for enum
> - Inline usages of Color.AGE_N variables
> - Reduce visibility of members to package-private where possible
> - Target jdk17, update github actions
Okay, thank you for doing the cleanups! I think we can accept these changes in their current form, with the intent to cleanup more later.
I don't see GHA runs for this, could you go to https://github.com/earthling-amzn/shenandoah-visualizer/actions and enable them? You'd probably need to submit the workflow run on your `earthling-amzn:genshen-visualizer` branch manually. Bots should catch up with the results then,.
-------------
Marked as reviewed by shade (Reviewer).
PR Review: https://git.openjdk.org/shenandoah-visualizer/pull/1#pullrequestreview-1366451940
More information about the shenandoah-dev
mailing list