|
|
|
Back to newsletter 132 contents
jvisualvm is an excellent tool - given that's it's free. It's not the best JVM profiler out there by a long shot, but it's free and comes with the JDK. However, it's very very definitely a development tool, as anyone who has run it for a while against their JVM can attest. It does have a strong tendency to crash your JVM anytime you try and get any detailed profiling data. You can get there eventually, by being gentle, slow, repeating runs, and uttering some magical incantations. It'd be lovely to attach it to a prod process and get the data every once in a while, but the risk of creating a crash is way too high.
JRockit Mission Control provides similar kind of data to jvisualvm - but can work against production JVMs. When I first saw the information you get out of JRockit Mission Control, I thought that would be an excellent spur to other JVM creators, and specifically Sun's HotSpot team (Sun still existed then), to get out that kind of hugely useful telemetry.
Now, Marcus Hirt, the team lead for Mission Control, tells us that this excellent technology is being rolled into the merged JRockit/HotSpot JVM - the HotRockit JVM (see the news item below, referencing his JavaOne presentation). The overhead is low and stability high, because HotRockit Mission Control basically accesses the internal counters of the JVM to derive the data it is displaying, and for the most part those counters are used by the JVM itself.
Think about what the JVM already knows - or can know. The JVM contains it's own always on profiler; it does the garbage collection and knows all about the heap, what's in it and (with a little bit of additional counting) what's been cleaned up; the JVM also knows exactly what it has executed, which theoretically allows for the sequence of executions to be recorded and potentially investigated later - which is exactly what you get with the Java Flight Recorder!
The time-to-market appears to be for Mission Control features to come available gradually over the JDK 7 and JDK 8 releases, which means that potentially, in two years time, you'll have the ability to performance monitor your production JVM with HotRockit Mission Control. You can try the current Mission Control as JRockit now has the same license as HotSpot, and Marcus is very keen for your feedback.
Now on with this month's newsletter and all our usual Java performance tools, news, and article links. We also have a new cartoon over at fasterj.com use the latest evolution of your JVM, and, as usual, all the extracted tips from all of this month's referenced articles.
Java performance tuning related news.
Java performance tuning related tools.
Back to newsletter 132 contents