RFR: 8350006: IGV: show memory slices as type information [v2]
Quan Anh Mai
qamai at openjdk.org
Fri Feb 14 12:51:10 UTC 2025
On Fri, 14 Feb 2025 10:05:45 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:
>> This changeset extends the "Show types" filter in IGV to show the memory slice corresponding to each memory node. This information can be useful e.g. in the ongoing investigation of [JDK-8333393](https://bugs.openjdk.org/browse/JDK-8333393). Here is an example of a memory subgraph with the extended "Show types" filter enabled:
>>
>> 
>>
>> #### Testing
>>
>> - tier1 (windows-x64, linux-x64, linux-aarch64, and macosx-x64; release and debug mode).
>>
>> - Tested IGV manually on a few selected graphs. Tested automatically that displaying thousands of graphs with the "Show types" filter enabled does not trigger any assertion failure (by enabling assertions, instrumenting IGV to display parsed graphs eagerly, and running `java -Xbatch -XX:-TieredCompilation -XX:PrintIdealGraphLevel=3`).
>
> Roberto Castañeda Lozano has updated the pull request incrementally with one additional commit since the last revision:
>
> Increase property print buffer to avoid truncating dump_spec
In `MemNode::dump_adr_type`, we have this:
ciField* field = atp->field();
if (field) {
st->print(", name=");
field->print_name_on(st);
}
st->print(", idx=%d;", atp->index());
By details, I mean the things like `field->print_name_on(st)` here. It would be good if we can know all the details about the memory slice from looking at the IGV, we can have it being an option that can be toggled if you are afraid that it would be too long.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/23621#issuecomment-2659251312
More information about the hotspot-compiler-dev
mailing list