RFR: 8315604: IGV: dump and visualize node bottom and phase types [v2]
Roberto Castañeda Lozano
rcastanedalo at openjdk.org
Tue Sep 26 13:02:32 UTC 2023
> This changeset dumps node type information in IGV graphs. Type information includes node bottom types (`Node::bottom_type()`) and node phase types (GVN, IGVN, CCP) as IGV node properties `bottom_type` and `phase_type`. It also adds a filter (`Show types`) to display type information in the node labels:
>
> 
>
> The filter presents a concise version of the complete type information (for example, removing long interface lists from reference types). It shows the bottom type of each node (which is always available), followed by the phase type (prefixed with `P:`) if this is also available and differs from the bottom type (see, for example, node `124 AddI` in the picture above).
>
> On the HotSpot side, the size of the `stringStream` buffer used to extract type information (and other properties such as `dump_spec`) is increased from 128 to 512 characters to prevent truncations. The additional type information and the buffer size change increase the size of the dumped graphs by around 10% on average.
>
> Thanks to Christian Hagedorn for providing feedback on earlier versions of the changeset.
>
> #### Testing
>
> - tier1-3 (windows-x64, linux-x64, linux-aarch64, macosx-x64, macosx-aarch64; release and debug mode)
> - tested that thousands of graphs are correctly opened and visualized with IGV using different filter configurations
> - tested that graphs dumped interactively from GDB are correctly opened and visualized
> - tested that graphs dumped from earlier JVM versions are correctly handled by the new filter
Roberto Castañeda Lozano has updated the pull request incrementally with one additional commit since the last revision:
Access Compile pointer via IdealGraphPrinter::C
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/15881/files
- new: https://git.openjdk.org/jdk/pull/15881/files/61183662..ecbc8c22
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=15881&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=15881&range=00-01
Stats: 23 lines in 3 files changed: 2 ins; 7 del; 14 mod
Patch: https://git.openjdk.org/jdk/pull/15881.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15881/head:pull/15881
PR: https://git.openjdk.org/jdk/pull/15881
More information about the hotspot-compiler-dev
mailing list