2 Replies Latest reply: Apr 24, 2012 5:38 AM by 858090 RSS

    Having problems in tuning G1GC

    858090
      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
          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
            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