JInsight is a good tool, but you may find that is not ideal for your situation.
There are basically three kinds of Java profiling techniques: - Code instrumentation: the profiler hooks class loading and adds intrumentation byte code to all or selected methods. A nice free pure-java tool that does this is http://jiprof.sourceforge.net/ This works well on z/OS, so it probably works fine on z Linux as well. - Tracing: the profiler gets an event when *every* method is entered and exited. This is the way that JInsight works (unless something has changed recently) - Sampling: The profiler periodically examines the thread stack(s) and builds a statistical profile A great profiler that does this with very low overhead is "YourKit", but I don't think that it is available on z Linux. All three techniques are useful depending on the kind of problem, but I find a sampling profiler to be the best for most situations. Code instrumentation can work well if you designate selected Java packages to instrument, which is a much lower overhead way to find out what is slow in a large application. For example: just instrument the application classes and not framework or SDK classes and you can find out what parts of your code are performing slowly, without nearly as much profiling overhead. Tracing is best when you want very detailed data for a small amount of code or period of time. Kirk Wolf Dovetailed Technologies http://dovetail.com ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390
