RFR: 6364: Improvements to the Thread Graph

Brice Dutheil github.com+803621+bric3 at openjdk.java.net
Sat Aug 29 14:24:57 UTC 2020


On Tue, 25 Aug 2020 14:18:02 GMT, Alex Macdonald <aptmac at openjdk.org> wrote:

>> Hi just for the record how this is handled when there's a lot of threads to deal with.
>> 
>> ![image](https://user-images.githubusercontent.com/803621/84946230-a8da4700-b0e8-11ea-9058-54a51490fd5a.png)
>
> Hi everyone,
> 
> The following commits update this PR based on the feedback on the Threads Page document (posted in Slack) [0], and then
> rebased to sit ontop of the current master branch.
> The major changes include:
> - reverting some of the colour palette modifications to restore "urgency" of some colours
> - removal of the right-side toolbar and migrating its controls to the top bar
> - setting the minimum readible lane height by default & fixing the lane height controls
> - adding functionality for an "legacy" zoomed out mode of one-past the minimum lane height, which mimics the current
>   threads page display (including restoring the mousewheel zoom in this mode)
> - the popup table has been reworked to be a foldable table with an implementation based off an old JMC-6368 proposed patch
> - placing the new threads page implementation into it's own page, so the current and new pages can live simultaneously
> 
> Here's a handful of screenshots and gifs showing the new modifications:
> 
> Threads Page (Linux):
> ![0-overview](https://user-images.githubusercontent.com/10425301/91185566-fdd3a400-e6bb-11ea-82f6-bb3f0abc3260.png)
> 
> Threads Page (Windows):
> ![0-windows](https://user-images.githubusercontent.com/10425301/91185573-00ce9480-e6bc-11ea-86d5-ca3be0b426f2.png)
> 
> Overview Mode (Linux):
> ![2-legacy-mode](https://user-images.githubusercontent.com/10425301/91185593-05934880-e6bc-11ea-9164-9be5f0dbd2bc.png)
> 
> Legacy Page (Linux):
> ![3-legacy-page](https://user-images.githubusercontent.com/10425301/91185646-1a6fdc00-e6bc-11ea-854f-660574e7b4c9.png)
> 
> Gif of the overview mode toggle (Linux):
> ![legacy-mode](https://user-images.githubusercontent.com/10425301/91185675-2065bd00-e6bc-11ea-97ea-de2c74bc15fe.gif)
> 
> Gif of the foldable table and lane selection (Linux):
> ![fold-table](https://user-images.githubusercontent.com/10425301/91185707-278ccb00-e6bc-11ea-9581-dd8925ea94f9.gif)
> 
> As usual, I've been testing the functionality and behavior on my Linux & Windows machines, and they work okay from what
> I've seen. If someone could double-check that this behaves as expected on a Mac it'd be greatly appreciated.
> [0] https://docs.google.com/document/d/1fY5xXJKcg84vLGySzOZ7JjVqvZyZeSsGq7syTK5ETCM/edit
> [1] https://bugs.openjdk.java.net/browse/JMC-6368

Hi I just wanted to give it a try but JMC keeps complaining about missing JDK.

$ ./target/products/org.openjdk.jmc/macosx/cocoa/x86_64/JDK\ Mission\ Control.app/Contents/MacOS/jmc -vm
/Users/bric3/.asdf/installs/java/corretto-8.262.10.1/bin/ Started recording 1.

Use jcmd 79275 JFR.dump name=JMC_Default filename=FILEPATH to copy recording data to file.
No Java runtime present, requesting install.

Any idea how to make this work ?

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

PR: https://git.openjdk.java.net/jmc/pull/27


More information about the jmc-dev mailing list