Mercurial > hg > truffle
comparison src/share/tools/IdealGraphVisualizer/README @ 222:2a1a77d3458f
6718676: putback for 6604014 is incomplete
Reviewed-by: kvn, jrose
author | never |
---|---|
date | Tue, 24 Jun 2008 16:00:14 -0700 |
parents | |
children | f4fe12e429a4 |
comparison
equal
deleted
inserted
replaced
221:1e026f8da827 | 222:2a1a77d3458f |
---|---|
1 The Ideal Graph Visualizer is a tool developed to help examine the | |
2 intermediate representation of C2 which is commonly referred to as the | |
3 "ideal graph". It was developed in collaboration with the University | |
4 of Linz in Austria and has been included as part of hotspot since that | |
5 was the primary target of the tool. The tool itself is fairly general | |
6 with only a few modules that contain C2 specific elements. | |
7 | |
8 The tool is built on top of the NetBeans 6.0 rich client | |
9 infrastructure and so requires NetBeans to build. It currently | |
10 requires Java 6 to run as it needs support for JavaScript for its | |
11 filtering mechanism and assumes it's built into the platform. It | |
12 should build out of the box whit NetBeans 6 and Java 6 or later. It's | |
13 possible to run it on 1.5 by including Rhino on the classpath though | |
14 that currently isn't working correctly. Support for exporting graphs | |
15 as SVG can be enabled by adding batik to the classpath which isn't | |
16 included by default. | |
17 | |
18 It can be built on top of NetBeans 6.1 if you change the required | |
19 modules to be platform8 instead of platform7. The tool could run on | |
20 JDK 1.5 with some reworking of the how the JavaScript support is | |
21 enabled but currently it requires some tweaking of the setup. This | |
22 will be fixed in a later setup. | |
23 | |
24 The JVM support is controlled by the flag -XX:PrintIdealGraphLevel=# | |
25 where # is: | |
26 | |
27 0: no output, the default | |
28 1: dumps graph after parsing, before matching, and final code. | |
29 also dumps graph for failed compiles, if available | |
30 2: more detail, including after loop opts | |
31 3: even more detail | |
32 4: prints graph after parsing every bytecode (very slow) | |
33 | |
34 By default the JVM expects that it will connect to a visualizer on the | |
35 local host on port 4444. This can be configured using the options | |
36 -XX:PrintIdealGraphAddress= and -XX:PrintIdealGraphPort=. | |
37 PrintIdealGraphAddress can actually be a hostname. | |
38 | |
39 Alternatively the output can be sent to a file using | |
40 -XX:PrintIdealGraphFile=filename. Each compiler thread will get it's | |
41 own file with unique names being generated by adding a number onto the | |
42 provided file name. | |
43 | |
44 More information about the tool is available at | |
45 http://wikis.sun.com/display/HotSpotInternals/IdealGraphVisualizer. |