By daviddetlefs on Oct 07, 2005
What do I bring to the table for this job? Well, I hope a pretty broad range of experience in VM implementation techniques. I've been working in various aspects of VM implementation since I joined Sun in 1996. I was a member of the team that developed the Solaris version of Java 1.2, known internally as the "ExactVM." Here I worked on GC, locking, and JIT compilation. When Sun made the decision to unify our J2SE VM efforts behind HotSpot, I helped ported the ExactVM internal "GC interface" to HotSpot, paving the way for easy use of multiple collectors, including an adaptation of the low pause time garbage collector had developed. Since then I've had occasion to delve into both the client and server compilers, so I'm now at least somewhat familiar with most of the system.
And an exciting system it is! The HotSpot team's hard work over the past few years has significantly increased the reliability and usability of the system. For example, the "ergonomics" work done by the GC team has pretty much eliminated the need to do painstaking tuning of garbage collection parameters. Because of greater reliability and decreased bug counts, we believe that we now have a really stable base from which to attempt some interesting performance innovations in the next couple of years. I'm really looking forward to helping to make some of these things happen!
In this space, I'll try to tell you interesting things about HotSpot. While I'm fairly familiar with the system, my new role will require me to get more familiar with what we've been doing in the last couple of years. I may also hint, from time to time, about what issues we're worrying about for future development (within the bounds of intellectual property protection :-). I hope you find it useful!