At AOSD this week, I had the pleasure of sitting down with the manager of the JRockit team so that he could show me a demo of JRockit. It was so impressive, I had to blog about it.
First of all, there is a nice GUI management that has all the sexy stuff like graphs and gauges. There are about 50 JMX stats that you can monitor, set thresholds on, and setup alerts (and send an email when that alert happens). Not much different than jconsole, so not THAT interesting...
Ya know OptimizeIt? JProbe? Well....Memory profiling, heap analysis, CPU analysis, lock analysis, all that stuff is embedded in the VM and tightly integrated with the JRockit VM. It has a much friendlier interface than OptimizeIt.
But...that's not the coolest thing. The coolest thing is that you can do this analysis on a live system! The overhead is so tiny and there are no special VM switches you have to turn on to use it. This is because the GC and VM in general already have this information. You can take CPU or heap snapshots and analyze the java code that ran within the snapshots. Really cool stuff.