Profiler4j 1.0 Beta2
Profiler4j is a Java CPU profiler 100% portable.
But please keep in mind that this project is in early development stage and may have some nasty bugs. Also, I plan to add much more features in the next releases.
Here are some key features of "Profiler4j":
· Based on dynamic bytecode instrumentation.
· 100% Java.
· Simple deployment -- just add a parameter to the command line and you're ready to go.
· Remote console to view and analyze results. Currently two view modes are supported:
· Graph view (already functional) similar to JProbe.
· Call tree view (in progress)
· Fine-grained configuration that can be freely tuned without restarting the profiled JVM.
· Call Tree View still has some bugs with recursive methods (seems ok since 1.0-alpha4)
· Core java classes (java.*, javax.*) and some other packages (org.xml.*, org.jaxen.*, etc.) are not profiled.
· Constructors are not profiled. That's a minor problem because most of the work is done by other methods anyway.
· Heavy memory usage when the target application has many threads. Not really a bug but I think it must be noted. You can provide rules to instrument only the classes you really need to.
· Java 1.5
What's New in This Release:
· This release fixes a critical start-up error when the Profiler4j Console is run under Linux.
· A new feature that allows the user to monitor threads (stack trace, state, monitor contention, etc.) was added.