This project has moved to AdoptOpenJDK/jitwatch to benefit the wider Java community.
All further development will take place on the AdoptOpenJDK fork.
Log analyser for the Java HotSpot JIT compiler.
For more information and screenshots see: http://www.chrisnewland.com/jitwatch
Processes a completed hotspot.log or tails a live one.
Easily view which methods are JIT-compiled and plot a timeline of JIT compilations.
Add source trees and jars/class folders to enable opening source / bytecode from a context menu.
To generate the log file used by JITWatch run your program with JVM switches
-XX:+UnlockDiagnosticVMOptions -XX:+TraceClassLoading -XX:+LogCompilation -XX:+PrintAssembly
If you want to use the -XX:+PrintAssembly switch to view the assembly language (disassembled JIT-compiled native code) then you need to use a debug JVM build or have built the hsdis (HotSpot disassembler) binary.
Instructions for building hsdis are here: http://dropzone.nfshost.com/hsdis.htm
ant clean ant
If you get compile errors relating to external dependencies (JDK lib/tools.jar and jre/lib/jfxrt.jar) then set your JAVA_HOME environment variable to point to a JDK
export JAVA_HOME=/path/to/jdk ant
mvn package
#GUI Version ./launchUI.sh
#Simplifed Text Version ./launchHeadless.sh
If required, edit the launch scripts to set up your JDK_HOME variable by uncommenting and completing the line
#export JDK_HOME=
ant run
mvn exec:java