view GRAAL_README @ 3465:8cd198d7cbc1

When a method that has been compiled before is considered for inlining, use its compiled (native) code size for size checks. This avoids inlining compiled methods that already contain many other inlined methods, reducing generated code size and usually execution time as well. Also, add GraalMetrics bookkeeping for inlining.
author Peter Hofer <peter.hofer@jku.at>
date Mon, 01 Aug 2011 13:45:25 +0200
parents ea778c37bdae
children d8c27956ec6e
line wrap: on
line source

For creating a Graal VM JDK, the file jre\lib\jvm.cfg has to be modified such that it includes the line:
-client KNOWN

Before running the Graal VM, the following environment variables are needed:
- MAXINE: Pointing to a Maxine VM repository with compiled Java files.
- GRAAL: Pointing to a Graal VM repository with compiled Java files.

In particular, the VM will look for the compiled Java files in the following directories:
${MAXINE}/com.oracle.max.cri/bin
${MAXINE}/com.oracle.max.base/bin
${MAXINE}/com.oracle.max.asmdis/bin
${MAXINE}/com.oracle.max.asm/bin
${MAXINE}/com.oracle.max.graal.graph/bin
${GRAAL}/graal/com.oracle.max.graal.compiler/bin
${GRAAL}/graal/com.oracle.max.graal.runtime/bin
${GRAAL}/graal/com.oracle.max.graal.graphviz/bin

For starting the Graal VM, the two flags "-client -graal" have to be specified. Additional flags that might be useful:
-G:Plot Sends the graphs of compiled methods via network stream to the IdealGraphVisualizer (NetBeans project at ${GRAAL}/src/share/tools/IdealGraphVisualizer that can be built and run with NetBeans 7.0, use "Graal Coloring" and "Graal Edge Coloring" filters)
-G:Time Prints timings for the different compilation phases
-G:Meter Prints metrics for the different compilation phases

The usual HotSpot flags -Xcomp -XX:CompileOnly= -XX:CompileCommand= or -XX:+PrintCompilation can be used to control the compiled methods.