This discussion is archived
2 Replies Latest reply: Apr 24, 2012 3:38 AM by 858090 RSS

Having problems in tuning G1GC

858090 Newbie
Currently Being Moderated
Hi,

We've start using G1GC in our real time online transaction processing application. We are currently using JDK 1.6.0.23 (Solaris) at our servers. We are using SUN SPARC ENTERPRISE
T5140 SERVER.

Problem: We are struggling with long pause times ranges from 6-12 seconds, which directly effect our online processing. Even our monitoring threads are also halted during this pause time. We are using following JVM Params:

-server -verbosegc -Xms512m -Xmx3076m -Xmn256m -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:-DisableExplicitGC -XX:+UseG1GC -XX:+AggressiveOpts
-XX:+UnlockExperimentalVMOptions -XX:+DoEscapeAnalysis


Please advice any improvements,


regards,

k5m
  • 1. Re: Having problems in tuning G1GC
    802316 Pro
    Currently Being Moderated
    What can you tell use about the nature of long pause times? How often do they occur? Is it after a burst of activity?

    Have you tried memory profiling your application to minimise object creation?
  • 2. Re: Having problems in tuning G1GC
    858090 Newbie
    Currently Being Moderated
    We were able to resolve the issue by using concurrent, multi threaded garbage collector i.e. G1GC:

    -server -d64 -Xms1024m -Xmx3072m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:MaxGCPauseMillis=400 -XX:GCPauseIntervalMillis=8000 -XX:+UseCompressedOops -XX:NewRatio=50

    We can also use additionally following JVM Params w.r.t debugging/logging:

    -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime

    thanks

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points