Fully featured low overhead profiler for Java EE and Java SE platforms.
Performance monitoring and profiling of Jenkins, TeamCity, Gradle, Maven, Ant, JUnit and TestNG.
Easy to use performance and memory profiler for .NET framework.

Excessive garbage allocation

How to find excessive garbage allocation?

Purpose: Reduce time that garbage collector spends on collecting temporary objects.

If garbage collection takes a significant amount of time, it is advised to profile memory allocation to pin-point and optimize the problematic code.

Let us assume there is a task in your application that you want to profile.

  • Start object allocation recording with default settings right before the task is started.
  • Wait until the task finishes or performs long enough.
  • Capture memory snapshot and stop object allocation recording.
  • Open snapshot and use Garbage Collection view.

Optionally, the profiled application can be launched with object allocation recording started with the help of corresponding startup options. Memory snapshot with recorded allocation information can be captured automatically on profiled application exit and/or on high memory usage. Read more in the Startup options section.