Tuesday November 13, 2007
Java HotSpot Client Compiler Visualizer
One of the people Jarda and I met last week at the Johannes Kepler University in Linz, Austria, during the NetBeans Certified Engineering course, was Christian Wimmer, who is the developer behind the open sourced Java HotSpot Client Compiler Visualizer. The tool, created on top of the NetBeans Platform, visualizes the internal data structures of the Java HotSpot client compiler (also called C1), which is a just-in-time compiler inside the Java HotSpot VM that translates bytecode to machine code. Both textual and graphical representations of internal structures are presented by the tool. It uses information that can be emitted by the debug version of the Java HotSpot VM since version 6, including the OpenJDK. The application can be useful for developers that work on the client compiler, i.e., if you want to port it to a new platform or develop new compiler optimizations. Here is what it looks like, click the image to enlarge it:
For all the details on this tool, see the User Guide, which is available here.
Partly related to this is Thomas Wurthinger's Visualization of Program Dependence Graphs, which is a paper dealing with the server compiler, and is submitted in partial fulfilment of the requirements of the degree of Master of Science at the same university as the above, the Johannes Kepler University in Linz. It makes for very interesting reading and, from a NetBeans Platform perspective, especially so. (In fact, there is a lot of information on the NetBeans Platform in that thesis.)
Nov 13 2007, 02:18:19 AM PST Permalink



