Fully featured low overhead profiler for Java EE and Java SE platforms.
Easy-to-use performance and memory .NET profiler for Windows, Linux and macOS.
Secure and easy profiling in cloud, containers and clustered environments.
Performance monitoring and profiling of Jenkins, Bamboo, TeamCity, Gradle, Maven, Ant and JUnit.

Allocation flame graph

Allocation flame graph is a way to visualize the entire application call tree, which allows to find performance bottlenecks quickly and easily. Execution paths where more objects are allocated are wider and more visible on the graph.

Flame graph is available in both live mode, when you profile the running application, and when you analyze captured snapshot. In live mode graph updates in real time, when UI synchronizes with profiler agent.

Layout

Along horizontal axis flame graph draws the stacks sorted by execution time. You always see the longest methods at the left side of the graph, that simplifies analyzes.

The width of the graph element is proportional to the number of objects that were created in the corresponding stack frame. The wider the element the more objects have been allocated.

Call stacks are laid out vertically, and grow from bottom to top. That is similar to .NET stack trace you can see printed in a console.

Allocation flame graph

Colors

The colors of the graph have no meaning, they just visually separate neighbour elements and are chosen from a flame palette. Red color of an element does not mean that the corresponding method allocates more objects.

Zoom

Sometimes you may want to closely inspect a method hat didn't allocate too many objects. Usually such methods are narrow and the graph is not able to show its called methods. In this case you can zoom in the method. The whole graph will be scaled, and zoomed element will occupy entire screen width, revealing hidden details. Zoom in is activated by double-click or from popup menu. ESC resets zoom and returns graph to its original scale.

Zoomed flame

Filters

Flame graph respects filter settings and collapse filtered methods the same way as it does Allocation call tree. Inside filtered elements you will see small button Unfold that allows to unfilter the element. You can always undo unfiltering by using the Ctrl+Z shortcut or from popup menu.

Actions

The following actions are available in the popup menu:

  • File | Export to... (Ctrl+S) - exports flame graph to PNG image.
  • Tools | Open in IDE (F7) - opens method declaration in IDE editor. See IDE integration.

YourKit uses cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content and targeted ads, to analyze our website traffic, and to understand where our visitors are coming from.

By browsing our website, you consent to our use of cookies and other tracking technologies in accordance with the Privacy Policy.