Hello all,

For my own research purposes I'm starting to implement support in DRLVM for what the JikesRVM folks call "replay compilation methodology" (see: http://jikesrvm.org/Experimental+Guidelines and Section 5 of http://cs.anu.edu.au/~Steve.Blackburn/pubs/papers/oor-oopsla-2004.pdf) .

I've thought a bit about it and I know I would need at least the following: 1) Mechanism for logging edge profiles (I actually already have a quick and dirty way of doing this).
2) Mechanism for logging call profiles.
3) Mechanism for reading in both profiles and feeding them to the JIT when running in replay mode.

I also suspect I need to keep track of which classes have been loaded and when. Basically my thinking here is that the "replay" compiler may want to inline a method that hasn't even been loaded yet so I'd need to postpone compilation in such a case.

Right now I'm using a relatively old (ancient?) version of the DRLVM tree (r510344), but would consider updating to a newer tree if there is sufficient interest. Is this something that others would want contributed back to Harmony?

Thanks,
Naveen

Reply via email to