Suggestions for finding end-to-end Java CPU profilers [closed]

What good end-to-end CPU analyzers exist in Java?

Quick list I'm looking for:

>Offline analysis – no user interaction or GUI is required during program execution Dump the configuration file data to a file and then use the GUI to view it. Good. I just don't want to keep it when the work is running > end-to-end recording - profiler should be able to start recording immediately after entering the main call of J2SE application It should stop recording immediately before the JVM exits. > Call graph generation – after analysis, it is good to convert the data into a visual call graph

Google has a good C / C + + – http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html Dissector

If Java's equivalent exists, it's exactly what I'm looking for

I didn't include hprof in my list of potential profilers because compared with other commercial profilers I see when I call the analysis with a precise CPU, It performs poorly (usually through byte code injection, which is very slow, but hprof is at least one order of magnitude slower than other analyzers. When a single sampling profile needs 1-2 hours to run, it is unacceptable to be equivalent to the same run of the day)

Solution

So far, my favorite is jpprofiler I didn't realize this until now (because I always use the interactive analysis GUI), but it actually supports offline analysis, as you described

Other cool features:

>It describes all SQL statements, so you can see which database queries are slowing you down. > It tracks which methods (in which class and package) allocate the most memory, which types of objects & arrays, and the lifespan of these objects So if you're leaking memory, it's easy to find out which types of class instances are more useful than them, and find the method to initially allocate these objects (and who holds the reference to keep the objects alive). > You can track VM growth, monitor the frequency of GC complete collections, and determine how many objects (which type) are released in each collection cycle. > Of course, you can get a hierarchical breakdown of all method calls, including the number of calls and average execution time (exclusive or inclusive) of the entire call stack You can also view this hierarchy from the perspective of the worst bottleneck function, sorted by execution time or memory allocation

For me, jpprofiler is one of the most important tools in my development process (second only to eclipse)

In addition, there is a free 10 day trial Download and view And, by the way, I'm not an accessory to the company or anything In the past five or six years, I have been a happy customer

The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
分享
二维码
< <上一篇
下一篇>>