This profiler (JRE 1.5.0 only) uses JVMTI and native bytecode instrumentation for the analysis of the heap, reachable objects, execution time, garbage collection efficiency, code coverage and thread contention. No preparation steps required in build.
Yet Another Java Profiler (YaJP) is a profiler tool that uses the JVMTI interface. It can be used to selectively trace a java program and store this information in a compressed logfile. This logfile can then later be analyzed using the same tool.