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

Profiling shows 0 time spent in GC

Moderators: Vladimir Kondratyev, Anton Katilin

Profiling shows 0 time spent in GC

Postby omera » Wed Dec 02, 2020 4:10 pm

The profiling results shows zero time spent in GC in the CPU tab, but Memory tab shows frequent GC pauses. What could it be?
omera
 
Posts: 5
Joined: Wed Dec 02, 2020 4:06 pm

Re: Profiling shows 0 time spent in GC

Postby Anton Katilin » Wed Dec 02, 2020 5:58 pm

The GC time is reported by the JVM, the profiler shows it as reported.

What JVM and garbage collector do you use?
What is the platform?
Anton Katilin
 
Posts: 6028
Joined: Wed Aug 11, 2004 8:37 am

Re: Profiling shows 0 time spent in GC

Postby omera » Wed Dec 02, 2020 6:31 pm

OpenJDK 64-Bit Server VM; 1.8.0_111-internal; 25.111-b14; mixed mode
omera
 
Posts: 5
Joined: Wed Dec 02, 2020 4:06 pm

Re: Profiling shows 0 time spent in GC

Postby Anton Katilin » Wed Dec 02, 2020 7:16 pm

You provided no information about the platform (OS) and the GC options used.

Anyway, you're using very old ("1.8.0_111") and likely customized or non-release ("internal") build.

I suggest to try the newest JVM build for your platform from one of prominent OpenJDK vendors.
Anton Katilin
 
Posts: 6028
Joined: Wed Aug 11, 2004 8:37 am

Re: Profiling shows 0 time spent in GC

Postby omera » Thu Dec 03, 2020 7:09 am

These are the flags passed to the jvm:

-javaagent:/var/lib/aspectjweaver.jar
-agentpath:/app/libyjpagent.so
-server
-XX:+UseConcMarkSweepGC
-XX:+UseCondCardMark
-XX:-UseBiasedLocking
-Xms1024m
-Xss1m
omera
 
Posts: 5
Joined: Wed Dec 02, 2020 4:06 pm

Re: Profiling shows 0 time spent in GC

Postby Anton Katilin » Thu Dec 03, 2020 10:18 am

Perhaps JVM does not fully accounts GC activities happening in background GC threads. As I suggested, please try a newer JVM to compare.

Anyway, the profiler cannot do anything to improve accuracy of reported GC CPU times which are supplied by the JVM.

Despite the CPU usage numbers, if there are many GC pauses, there must be significant GC activity. The profiler can help locating the code causing excessive allocations: https://www.yourkit.com/docs/java/help/excessive_gc.jsp
Anton Katilin
 
Posts: 6028
Joined: Wed Aug 11, 2004 8:37 am


Return to Java Profiler

Who is online

Users browsing this forum: No registered users and 1 guest

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.