Why aren't there any timeline profiler for Java?

Viewed 99

All of the profilers I've searched for (name a few: VisualVM, JProfiler, YourKit, async-profiler, and honest-profiler) doesn't support a simple timeline view, as Chrome Devtool or Unity profiler does. Any reason this couldn't be implemented on the java side?

Timeline view on chrome devtool

1 Answers

Time lines views that show all method calls are not practical for Java programs because of the amount of data that has to be collected. Also, they are not generally useful because the data is hard to follow. Views that show cumulated stack traces (invocation trees, hot spot views, call graphs, flame graphs) are much more helpful for solving performance problems.

However, JProfiler has something similar with its call tracer view. It's not displayed as a timeline, but as a hierarchical tree of threads, packages, classes and actual method calls.

enter image description here

The screenshot above shows a measurement from a demo application. In a real-world application, this recording generates a lot of data and is capped to avoid excessive memory usage. As such, this feature is useful when combined with a trigger that records a short call trace for a special event.

Disclaimer: My company develops JProfiler.

Related