Difference between revisions of "Jikes"

From Sniper
Jump to navigation Jump to search
Line 4: Line 4:
  
 
Steps:
 
Steps:
* Compile Sniper in 32-bit mode: by default on a 32-bit host OS, or to cross-compile use <pre>make SNIPER_TARGET_ARCH=i386</pre>
+
* Compile Sniper in 32-bit mode: by default on a 32-bit host OS, or to cross-compile use <code>make SNIPER_TARGET_ARCH=i386</code>
 +
* Obtain the [[Download_Benchmarks|benchmarks]], and follow these steps to compile Jikes
 +
** <code>export SNIPER_ROOT=/path/to/sniper</code>
 +
** <code>cd benchmarks</code>
 +
** <code>export BENCHMARKS_ROOT=$(pwd)</code>
 +
** <code>make -C tools/hooks</code>
 +
** <code>make -C jikes</code>
 +
* The last command will download the DaCapo benchmarks, compile the probes.jar framework which allows for ROI selection and replay compilation, and download a compiled version of Jikes that has been patched to support Sniper's magic instructions for ROI begin/end
 +
** To compile Jikes from source instead, allowing you to modify the flow and potentially make other changes to its source, you can start from the ''jikesrvm'' target in <code>benchmarks/jikes/Makefile</code>

Revision as of 06:55, 12 August 2014

It is possible to run the Jikes RVM (Research Virtual Machine) and the DaCapo benchmarks suite on top of Sniper. The latest Benchmarks release contains all code necessary to do this.

WARNING This setup can be complicated to make it work correctly! Expect to have to experiment to find a right combination of host machine and OS that works for you. In general, AMD machines seem to cause issues. Running on a 32-bit OS, or in a 32-bit changeroot, is preferable over cross-compiling on a 64-bit OS.

Steps:

  • Compile Sniper in 32-bit mode: by default on a 32-bit host OS, or to cross-compile use make SNIPER_TARGET_ARCH=i386
  • Obtain the benchmarks, and follow these steps to compile Jikes
    • export SNIPER_ROOT=/path/to/sniper
    • cd benchmarks
    • export BENCHMARKS_ROOT=$(pwd)
    • make -C tools/hooks
    • make -C jikes
  • The last command will download the DaCapo benchmarks, compile the probes.jar framework which allows for ROI selection and replay compilation, and download a compiled version of Jikes that has been patched to support Sniper's magic instructions for ROI begin/end
    • To compile Jikes from source instead, allowing you to modify the flow and potentially make other changes to its source, you can start from the jikesrvm target in benchmarks/jikes/Makefile