Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The project is accessible via Mercurial at http://hg.code.sourceforge.net/p/jikesrvm/soc2011 under the branch RVM-924-GARY46.

The goal of the project was to compare different young generation models in one virtual machine. The young generation organisations compared were Steps (e.g. as used by the GHC Haskell system), Eden and Survivor spaces (as used by HotSpotO and the default “en masse” promotion model (e.g. only one space in the nursery).

...

Hot Method Recompilation [2] – The original design of recompilation of the hot methods in the current Jikes RVM head made it very easy to multi-thread due to the fact that recompilation of hot methods was already controlled by one daemon thread running in the background constantly waiting for hot methods [6] and recompiling them in the background. All that needed to be done to utilize parallel processing was just spawn more Compilation Threads [5] and add a command line argument to specify the number of threads the user desires. It is important to remember that multi-threaded recompilation of hot methods will only be effective when the user's software or benchmark produces a certain amount of hot methods to be recompiled, otherwise there will be no speedup due to thread overhead or even worse a slow down. One can tune Jikes RVM recompilation heuristics in the following source code files CompilerDNA.java [16,17],AnalyticModel.java [6,18], to increase the number of hot methods in the recompilation queue.

...