Supporting Graal compiler logs in JITWatch
Doug Simon
doug.simon at oracle.com
Wed Jan 10 14:01:18 UTC 2018
Hi Chris,
> On 9 Jan 2018, at 23:34, Chris Newland <cnewland at chrisnewland.com> wrote:
>
> Hi all,
>
> I'd like to add support for parsing Graal compiler logs in JITWatch[1], a
> tool for visualising JIT compiler decisions.
>
> Currently JITWatch supports the XML-based LogCompilation format from the
> HotSpot JVM and the disassembled native code obtained from hsdis.
>
> JITWatch can report on:
>
> JIT timing events - compile task queued, compilation started, nmethod
> emitted.
> Inlining success and failure
> Uncommon trap placement
> OSR regions
> Branches taken/not taken
> Intrinsic usage
> Code cache layout and usage
> Escape analysis for avoiding heap allocations and eliding locks
At the moment, -XX:+LogCompilation will only produce Graal compilation related output produced by Graal-independent VM code. From this list above, I thinks that includes:
JIT timing events - compile task queued, compilation started, nmethod
Code cache layout and usage
Tom Rodriguez can refine my guesses.
>
> There is a JavaFX-based GUI for visualising the above and one of the
> most-used features is the TriView which shows the source code, bytecode,
> and disassembled native code in side-by-side panes with cross-linking.
>
> JITWatch has basic support for the line-based log format of IBM's J9 JIT
> system but at a much reduced level of functionality.
>
> My current understanding of JVMCI is minimal and I need to do a lot of
> reading and experimenting to get up to speed with Graal.
>
> If you think JITWatch support for Graal is a useful effort please let me
> know. Any pointers to Graal's existing JIT decision logging would be
> appreciated.
We'd definitely like to see JITWatch support Graal!
I've add a comment at https://github.com/AdoptOpenJDK/jitwatch/issues/265#issuecomment-356250468. Let's continue the conversation there.
-Doug
More information about the graal-dev
mailing list