YourKit released version 6 of their Java Profiler recently. Version 6 includes support for Java 6 as well as adaptive recording of object memory allocation which allows you to skip monitoring of some allocation events and thus improves performance during profiling.
YourKit Java Profiler is one of the main profiler's for Java, along with JProfiler, OptimizeIT and JProbe. There have been several recent discussions of YourKit, with Mark Levison finding it better than the Eclipse TPTP, Steph choosing JProfiler over it and Artima commenting on the ease of profiling production applications.
Among the new features in version 6.0 are:
- High-level J2EE profiling (SQL, JSP, Servlets,JNDI)
- Runtime filters to control overhead of CPU profiling
- Sorting by retained size in "Class List"
- New innovative "Merged paths" view for memory profiling
- Greatly improved object allocation recording
- Automatically memory snapshots on OutOfMemoryError
- UI usability improvements
- Java 6 support
- Automatic deadlock detection and ability to get current stack traces in telemetry
- New and improved J2EE server support