SlideShare a Scribd company logo
1 of 34
Do Your GC Logs Speak
        To You
Using Measurements to Tune Java Memory
             Management




    Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
                                     About Me
   tm
Java Performance Services




    •   Independent consultant (www.kodewerk.com)

         •   performance tuning, benchmarking, training
             course

    •   Co-author www.javaperformancetuning.com

    •   Speak frequently about performance

    •   Member of Java Champion program

    •   Other stuff... (google is you care to)
                            Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
                                     About Me
   tm
Java Performance Services




    •   Independent consultant (www.kodewerk.com)

         •   performance tuning, benchmarking, training
             course

    •   Co-author www.javaperformancetuning.com

    •   Speak frequently about performance

    •   Member of Java Champion program

    •   Other stuff... (google is you care to)
                            Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
                               Disclaimer
   tm
Java Performance Services




          The resemblance of any
          opinion, recommendation or
          comment made during this
          presentation to performance
          tuning advice is merely
          coincidental.

                            Copyright 2011 Kodewerk Ltd. All rights reserved
Why should I monitor GC?




   Copyright 2011 Kodewerk Ltd. All rights reserved
hy
                                                                      G
                                                                        C     d




                                                    at
                                                                   be           o
       Kodewerk                                                      fo tha we




                                                  g
                                               in

                                                is
           tm
        Java Performance Services
                                                                        re t
                                                                                 oc ha




                                      no nn

                                             g
                                                                           th      cu ve




                                           in
                                                                             e
               tting a heap




                                         ru
      I am ge                                                                   en rs     th




                                        th
                                                                                       ju is




                                 an is
            or no apparent                                                         d
      OOM f                                                                          of st lo



                       ha 0% PU
                                    d




                                                               Hi!
                                                                can
       W hat .
      reasonc                                                                          d
                          zen. C



                                  g




                                                                  the
               o uld                                                                     ay



                                in




                                                                   stra
                            size

                       be t h he




                                                                    why
       GC’s
                              e




                             en
                             w




                                                                     f re
            d u r in           e rea
                         h th


                          feT




                                                                      gc




                                                                      som
                                      son f




                                                                       gc.l
                         it h




                    g s ta
                          pp
                          10




                                                                        nge
                            r tu p            or co




                                                                         que
                                                    ntinu
                    heap




                                                                          CM
                  t f ro




                                                                          exe
                   m w




                                                           ous f
                    r a
                  . Wi t




                                                                           og.
                                                                            eon
                                                                 ull




                                                                             , I
                         Wh



                                                                              ntly
                                                                              S G
                                                                               cut
                            y
               afte
             oble




                      fr       do




                                                                                 It s
                                                                                 e h
             mca
            t im e
            ance




                                                                                 wan
                         ee        es




                                                                                   C e
                                                                                   es?
                     se     ze        ou

                                                                                    and




                                                                                    elp
                        co       up




                                                                                      eem
                                          r a
         and
         a pr




                                                                                       t to
      es to




                           nd


                                                                                        xec
                                     fo
      or m




                                              pp
     e of




                               s?       r 1     lic




                                                                                          to
                                                                                          why
                                            0s     at




                                                                                           s v
   Hello




                                                                                            ute
                                                      io
 rows




                                                                                            kno
                                               of
  I’ve
 perf



 inut




                                                         n




                                                                                              see
laps




                                                                                               er y
                                                                                                s so
                                    Copyright 2011 Kodewerk Ltd. All rights reserved            fu l


                                                                                                  w
Kodewerk

            ? ?          ?
   tm
Java Performance Services




        ??        ??
            ?          ?
                     ? ?
        ?? ? ?           ?
              ? ??
         ?  ?        ?
                ? ?    ?
        ? ? ?
                ?   ? ??
            ?               Copyright 2011 Kodewerk Ltd. All rights reserved
GC logs contain key
performance indicators




Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
   tm
        Garbage Collection Logs
Java Performance Services



              -verbose:gc

              -Xloggc:gc.log

                     7.0 has new flags for rollover

              Some other useful flags

                     -XX:+PrintGCDetails

                     -XX:+PrintTenuringDistribution

                     -XX:+PrintHeapAtGC

                     -XX:+PrintApplicationStoppedTime

                            Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
     tm
                         Collector Choices
  Java Performance Services




uint i = 0;
if (UseSerialGC)                       i++;
if (UseConcMarkSweepGC || UseParNewGC) i++;
if (UseParallelGC || UseParallelOldGC) i++;
if (UseG1GC)                           i++;
if (i > 1) {
  jio_fprintf(defaultStream::error_stream(),
              "Conflicting collector combinations in option list; "
              "please refer to the release notes for the combinations "
              "allowedn");
  status = false;
}




                              Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
   tm
                    Java Memory Pools
Java Performance Services




        Eden   S0    S1                           Tenured                      Perm

    Young                                  Old Gen
     Gen
Normal Flow
- objects created in Eden
- copied into the active survivor space
- copied between survivor spaces
- copied to Old Gen when ages reaches
        tenuring threshold

                            Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
   tm
                    Java Memory Pools
Java Performance Services




        Eden   S0    S1                           Tenured                      Perm

    Young                                  Old Gen
     Gen
Abnormal Situations
- memory leaks (loitering objects)
- long pause times (heap too big, poor
parallelization)
- too frequent full GC (zombies, poor throughput)
- survivor space flooding (premature promotion)
- fragmented tenured space (compaction)
- high rates of object creation
- etc.....
                            Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk     tm
                  Java Performance Services          Puzzler #1
                            600
Heap Usage after GC (MB)




                            500

                            400

                            300

                            200

                            100



                                                  1000          2000      3000               4000
                                                                Time (seconds)
                                              Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk     tm
                  Java Performance Services          Puzzler #1
                            600
Heap Usage after GC (MB)




                            500

                            400

                            300
                                                                               what happened here?

                            200

                            100



                                                  1000          2000      3000               4000
                                                                Time (seconds)
                                              Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
                          GC Log Fragment
   Java Performance Services

21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K-
>89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02,
real=0.32 secs]
163.028: [GC 163.028: [DefNew
Desired survivor size 115671040 bytes, new threshold 15 (max 15)
- age 1:        736 bytes,        736 total
- age 2:         112 bytes,      848 total
- age 4:          40 bytes,       888 total
- age 6:         232 bytes,      1120 total
- age 7:          32 bytes,     1152 total
- age 11:        96 bytes,      1248 total
: 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times:
user=0.00 sys=0.00, real=0.00 secs]
Heap
 def new generation total 451968K, used 193472K [0x10020000, 0x39620000, 0x39620000)
  eden space 226048K, 85% used [0x10020000, 0x1bd0fe48, 0x1dce0000)
  from space 225920K, 0% used [0x1dce0000, 0x1dce0560, 0x2b980000)
  to space 225920K, 0% used [0x2b980000, 0x2b980000, 0x39620000)
 tenured generation total 677888K, used 443015K [0x39620000, 0x62c20000, 0x62c20000)
   the space 677888K, 65% used [0x39620000, 0x546c1d78, 0x546c1e00, 0x62c20000)
 compacting perm gen total 36608K, used 36480K [0x62c20000, 0x64fe0000, 0x66c20000)
   the space 36608K, 99% used [0x62c20000, 0x64fc0290, 0x64fc0400, 0x64fe0000)
No shared spaces configured.
                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services               Full GC
21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K-
>89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02,
real=0.32 secs]



Full GC requested @, started @




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services               Full GC
21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K-
>89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02,
real=0.32 secs]



   tenured space statistics
   perm space statistics
- other stats are for the entire heap




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services               Full GC
21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K-
>89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02,
real=0.32 secs]



- occupancy before->after collection (memory pool configured size)
- reporting on tenured, perm memory pools plus total for all Java
  heap spaces




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services               Full GC
21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K-
>89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02,
real=0.32 secs]



- pause time statistics for tenured and all Java heap




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
                          GC Log Fragment
   Java Performance Services



163.028: [GC 163.028: [DefNew
Desired survivor size 115671040 bytes, new threshold 15 (max 15)
- age 1:        736 bytes,        736 total
- age 2:        112 bytes,       848 total
- age 4:         40 bytes,        888 total
- age 6:        232 bytes,       1120 total
- age 7:         32 bytes,      1152 total
- age 11:        96 bytes,      1248 total
: 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times:
user=0.00 sys=0.00, real=0.00 secs]




    young gen statistics
    statistics for all Java heap




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
                          GC Log Fragment
   Java Performance Services



163.028: [GC 163.028: [DefNew
Desired survivor size 115671040 bytes, new threshold 15 (max 15)
- age 1:        736 bytes,        736 total
- age 2:        112 bytes,       848 total
- age 4:         40 bytes,        888 total
- age 6:        232 bytes,       1120 total
- age 7:         32 bytes,      1152 total
- age 11:        96 bytes,      1248 total
: 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times:
user=0.00 sys=0.00, real=0.00 secs]




    surivor space sizing and tenuring thresholds
    breakdown of bytes @ age




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
                          GC Log Fragment
   Java Performance Services




Heap
 def new generation total 451968K, used 193472K [0x10020000, 0x39620000, 0x39620000)
  eden space 226048K, 85% used [0x10020000, 0x1bd0fe48, 0x1dce0000)
  from space 225920K, 0% used [0x1dce0000, 0x1dce0560, 0x2b980000)
  to space 225920K, 0% used [0x2b980000, 0x2b980000, 0x39620000)
 tenured generation total 677888K, used 443015K [0x39620000, 0x62c20000, 0x62c20000)
   the space 677888K, 65% used [0x39620000, 0x546c1d78, 0x546c1e00, 0x62c20000)
 compacting perm gen total 36608K, used 36480K [0x62c20000, 0x64fe0000, 0x66c20000)
   the space 36608K, 99% used [0x62c20000, 0x64fc0290, 0x64fc0400, 0x64fe0000)
No shared spaces configured.



- breakdown of occupancy and configured size of each memory pool
- pointer values describing each space (for debugging)




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
           tm
        Java Performance Services             Puzzler #2
0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]    
0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K-
>6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]    
6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]    
9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]  
11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]  
15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]  
19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]  
19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen:
36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]  
19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]  
20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]  
20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]  
20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]  
21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]  
21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]  
21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen:
36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]  



                                    Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
           tm
        Java Performance Services             Puzzler #2
0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]    
0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K-
>6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]    
6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]    
9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]  
11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]  
15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]  
19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]  
19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen:
36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]  
19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]  
20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]  
20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]  
20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]  
21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]  
21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]  
21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen:
36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]  



                                    Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
           tm
        Java Performance Services             Puzzler #2
0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]    
0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K-
>6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]    
6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]    
9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]  
11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]  
15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]  
19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]  
19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen:
36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]  
19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]  
20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]  
20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]  
20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]  
21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]  
21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]  
21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen:
36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]  
21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]  
21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen:
36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]  



                                    Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #3
848463.696: [GC [1 CMS-initial-mark: 989633K(1075200K)] 1003551K(1397760K), 6.3838946 secs]
[Times: user=0.06 sys=0.01, real=6.39 secs]
848470.085: [CMS-concurrent-mark-start]
848605.512: [CMS-concurrent-mark: 135.377/135.426 secs] [Times: user=7.83 sys=9.92, real=135.44 secs]
848605.512: [CMS-concurrent-preclean-start]
848605.726: [CMS-concurrent-preclean: 0.207/0.214 secs] [Times: user=0.06 sys=0.00, real=0.22 secs]
848605.726: [CMS-concurrent-abortable-preclean-start]
 CMS: abort preclean due to time 848610.846: [CMS-concurrent-abortable-preclean: 1.014/5.120 secs]
[Times: user=1.05 sys=0.08, real=5.13 secs]
848610.871: [GC[YG occupancy: 160577 K (322560 K)]848610.871: [Rescan (parallel) , 0.1280728
secs]848610.999: [weak refs processing, 1.3120556 secs] [1 CMS-remark: 989633K(1075200K)]
1150210K(1397760K), 1.4413516 secs]



                 Application runtime details can help

                         threads stall for 60 seconds during pause


                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...                         ????
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]



147.823 + 0.8074580 = 148.630 ~= 148.632


                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
      tm
   Java Performance Services         Puzzler #4
147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K-
>62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs]

148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K-
>52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs]

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid18706.hprof ...                         ????
Heap dump file created [83874513 bytes in 3.330 secs]

160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K-
>76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00,
real=0.28 secs]




                               Copyright 2011 Kodewerk Ltd. All rights reserved
Kodewerk
   tm
Java Performance Services




                                 Case Study




                            Copyright 2011 Kodewerk Ltd. All rights reserved
Questions



Copyright 2011 Kodewerk Ltd. All rights reserved

More Related Content

What's hot (17)

New ppt Solution Unlimited
New ppt Solution UnlimitedNew ppt Solution Unlimited
New ppt Solution Unlimited
 
The Hairball of Content
The Hairball of ContentThe Hairball of Content
The Hairball of Content
 
Revised Boise Ppt
Revised Boise PptRevised Boise Ppt
Revised Boise Ppt
 
Boise charrette PDF
Boise charrette PDFBoise charrette PDF
Boise charrette PDF
 
1
11
1
 
Tpn guideline
Tpn guidelineTpn guideline
Tpn guideline
 
Flat plan template 2
Flat plan template 2Flat plan template 2
Flat plan template 2
 
20110413 founder institute
20110413 founder institute20110413 founder institute
20110413 founder institute
 
Resume
ResumeResume
Resume
 
Ws5.1.3 finished
Ws5.1.3 finishedWs5.1.3 finished
Ws5.1.3 finished
 
Ws5 1-3
Ws5 1-3Ws5 1-3
Ws5 1-3
 
Novell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and ConfigurationNovell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and Configuration
 
uni business plan
uni business planuni business plan
uni business plan
 
Roleplaying in virtual worlds
Roleplaying in virtual worldsRoleplaying in virtual worlds
Roleplaying in virtual worlds
 
2011 Maryland General Assembly Report Card
2011 Maryland General Assembly Report Card2011 Maryland General Assembly Report Card
2011 Maryland General Assembly Report Card
 
Self Portrait
Self PortraitSelf Portrait
Self Portrait
 
Google
GoogleGoogle
Google
 

Viewers also liked

Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...Monica Beckwith
 
Garbage Collection Pause Times - Angelika Langer
Garbage Collection Pause Times - Angelika LangerGarbage Collection Pause Times - Angelika Langer
Garbage Collection Pause Times - Angelika LangerJAXLondon_Conference
 
Java gc and JVM optimization
Java gc  and JVM optimizationJava gc  and JVM optimization
Java gc and JVM optimizationRajan Jethva
 
G1 Garbage Collector: Details and Tuning
G1 Garbage Collector: Details and TuningG1 Garbage Collector: Details and Tuning
G1 Garbage Collector: Details and TuningSimone Bordet
 
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Yuji Kubota
 
Class method object
Class method objectClass method object
Class method objectMinal Maniar
 

Viewers also liked (8)

-XX:+UseG1GC
-XX:+UseG1GC-XX:+UseG1GC
-XX:+UseG1GC
 
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
 
Garbage Collection Pause Times - Angelika Langer
Garbage Collection Pause Times - Angelika LangerGarbage Collection Pause Times - Angelika Langer
Garbage Collection Pause Times - Angelika Langer
 
Moving to G1GC
Moving to G1GCMoving to G1GC
Moving to G1GC
 
Java gc and JVM optimization
Java gc  and JVM optimizationJava gc  and JVM optimization
Java gc and JVM optimization
 
G1 Garbage Collector: Details and Tuning
G1 Garbage Collector: Details and TuningG1 Garbage Collector: Details and Tuning
G1 Garbage Collector: Details and Tuning
 
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
 
Class method object
Class method objectClass method object
Class method object
 

Similar to Gclogs

Ormita recovering-lost-value
Ormita recovering-lost-valueOrmita recovering-lost-value
Ormita recovering-lost-valueOrmita Hong Kong
 
Worth Article by Richard Black
Worth Article by Richard BlackWorth Article by Richard Black
Worth Article by Richard Blackcourtkiel429
 
Learn Tech Services Quick View
Learn Tech Services Quick ViewLearn Tech Services Quick View
Learn Tech Services Quick ViewAman Deep Dubey
 
90 day example
90 day example90 day example
90 day examplehms022001
 
VDP & PSL -- all it can do to help grow your business
VDP & PSL -- all it can do to help grow your businessVDP & PSL -- all it can do to help grow your business
VDP & PSL -- all it can do to help grow your businessMarketingHighway
 
2010 Honda Insight Hybrid San Fernando
2010 Honda Insight Hybrid San Fernando2010 Honda Insight Hybrid San Fernando
2010 Honda Insight Hybrid San FernandoMiller Honda
 
newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08finance37
 
newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08finance37
 
CURATE: game play rules
CURATE: game play rulesCURATE: game play rules
CURATE: game play rulesDigCurV
 
2010 Honda Insight Hybrid Jackson
2010 Honda Insight Hybrid Jackson2010 Honda Insight Hybrid Jackson
2010 Honda Insight Hybrid JacksonPaul Moak Honda
 
KEC Green Games Catalog 3
KEC Green Games Catalog 3KEC Green Games Catalog 3
KEC Green Games Catalog 3KEC
 
2010 Honda Insight Hybrid Boston
2010 Honda  Insight Hybrid Boston2010 Honda  Insight Hybrid Boston
2010 Honda Insight Hybrid BostonAtamian Honda
 
Keeping the Process Alive: Data Analysis and Reinforcement for BBS
Keeping the Process Alive: Data Analysis and Reinforcement for BBSKeeping the Process Alive: Data Analysis and Reinforcement for BBS
Keeping the Process Alive: Data Analysis and Reinforcement for BBSQuality Safety Edge
 
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...Andrea Wiggins
 
2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San Leandro2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San LeandroSan Leandro Honda
 
Tpn guideline
Tpn guidelineTpn guideline
Tpn guidelinesoftmail
 

Similar to Gclogs (20)

Gclogs jdd
Gclogs jddGclogs jdd
Gclogs jdd
 
Ormita recovering-lost-value
Ormita recovering-lost-valueOrmita recovering-lost-value
Ormita recovering-lost-value
 
Sse wumart group5b_2011
Sse wumart group5b_2011Sse wumart group5b_2011
Sse wumart group5b_2011
 
Soffer CollectIve Master
Soffer CollectIve MasterSoffer CollectIve Master
Soffer CollectIve Master
 
Worth Article by Richard Black
Worth Article by Richard BlackWorth Article by Richard Black
Worth Article by Richard Black
 
Learn Tech Services Quick View
Learn Tech Services Quick ViewLearn Tech Services Quick View
Learn Tech Services Quick View
 
90 day example
90 day example90 day example
90 day example
 
VDP & PSL -- all it can do to help grow your business
VDP & PSL -- all it can do to help grow your businessVDP & PSL -- all it can do to help grow your business
VDP & PSL -- all it can do to help grow your business
 
URBAN: Orientation
URBAN: OrientationURBAN: Orientation
URBAN: Orientation
 
2010 Honda Insight Hybrid San Fernando
2010 Honda Insight Hybrid San Fernando2010 Honda Insight Hybrid San Fernando
2010 Honda Insight Hybrid San Fernando
 
newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08
 
newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08newmont mining Octavo_Symposium_Final_5_15_08
newmont mining Octavo_Symposium_Final_5_15_08
 
CURATE: game play rules
CURATE: game play rulesCURATE: game play rules
CURATE: game play rules
 
2010 Honda Insight Hybrid Jackson
2010 Honda Insight Hybrid Jackson2010 Honda Insight Hybrid Jackson
2010 Honda Insight Hybrid Jackson
 
KEC Green Games Catalog 3
KEC Green Games Catalog 3KEC Green Games Catalog 3
KEC Green Games Catalog 3
 
2010 Honda Insight Hybrid Boston
2010 Honda  Insight Hybrid Boston2010 Honda  Insight Hybrid Boston
2010 Honda Insight Hybrid Boston
 
Keeping the Process Alive: Data Analysis and Reinforcement for BBS
Keeping the Process Alive: Data Analysis and Reinforcement for BBSKeeping the Process Alive: Data Analysis and Reinforcement for BBS
Keeping the Process Alive: Data Analysis and Reinforcement for BBS
 
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...
Crowdsourcing Citizen Science Data Quality with a Human-Computer Learning Net...
 
2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San Leandro2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San Leandro
 
Tpn guideline
Tpn guidelineTpn guideline
Tpn guideline
 

Recently uploaded

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 

Recently uploaded (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 

Gclogs

  • 1. Do Your GC Logs Speak To You Using Measurements to Tune Java Memory Management Copyright 2011 Kodewerk Ltd. All rights reserved
  • 2. Kodewerk About Me tm Java Performance Services • Independent consultant (www.kodewerk.com) • performance tuning, benchmarking, training course • Co-author www.javaperformancetuning.com • Speak frequently about performance • Member of Java Champion program • Other stuff... (google is you care to) Copyright 2011 Kodewerk Ltd. All rights reserved
  • 3. Kodewerk About Me tm Java Performance Services • Independent consultant (www.kodewerk.com) • performance tuning, benchmarking, training course • Co-author www.javaperformancetuning.com • Speak frequently about performance • Member of Java Champion program • Other stuff... (google is you care to) Copyright 2011 Kodewerk Ltd. All rights reserved
  • 4. Kodewerk Disclaimer tm Java Performance Services The resemblance of any opinion, recommendation or comment made during this presentation to performance tuning advice is merely coincidental. Copyright 2011 Kodewerk Ltd. All rights reserved
  • 5. Why should I monitor GC? Copyright 2011 Kodewerk Ltd. All rights reserved
  • 6. hy G C d at be o Kodewerk fo tha we g in is tm Java Performance Services re t oc ha no nn g th cu ve in e tting a heap ru I am ge en rs th th ju is an is or no apparent d OOM f of st lo ha 0% PU d Hi! can W hat . reasonc d zen. C g the o uld ay in stra size be t h he why GC’s e en w f re d u r in e rea h th feT gc som son f gc.l it h g s ta pp 10 nge r tu p or co que ntinu heap CM t f ro exe m w ous f r a . Wi t og. eon ull , I Wh ntly S G cut y afte oble fr do It s e h mca t im e ance wan ee es C e es? se ze ou and elp co up eem r a and a pr t to es to nd xec fo or m pp e of s? r 1 lic to why 0s at s v Hello ute io rows kno of I’ve perf inut n see laps er y s so Copyright 2011 Kodewerk Ltd. All rights reserved fu l w
  • 7. Kodewerk ? ? ? tm Java Performance Services ?? ?? ? ? ? ? ?? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ?? ? Copyright 2011 Kodewerk Ltd. All rights reserved
  • 8. GC logs contain key performance indicators Copyright 2011 Kodewerk Ltd. All rights reserved
  • 9. Kodewerk tm Garbage Collection Logs Java Performance Services -verbose:gc -Xloggc:gc.log 7.0 has new flags for rollover Some other useful flags -XX:+PrintGCDetails -XX:+PrintTenuringDistribution -XX:+PrintHeapAtGC -XX:+PrintApplicationStoppedTime Copyright 2011 Kodewerk Ltd. All rights reserved
  • 10. Kodewerk tm Collector Choices Java Performance Services uint i = 0; if (UseSerialGC) i++; if (UseConcMarkSweepGC || UseParNewGC) i++; if (UseParallelGC || UseParallelOldGC) i++; if (UseG1GC) i++; if (i > 1) { jio_fprintf(defaultStream::error_stream(), "Conflicting collector combinations in option list; " "please refer to the release notes for the combinations " "allowedn"); status = false; } Copyright 2011 Kodewerk Ltd. All rights reserved
  • 11. Kodewerk tm Java Memory Pools Java Performance Services Eden S0 S1 Tenured Perm Young Old Gen Gen Normal Flow - objects created in Eden - copied into the active survivor space - copied between survivor spaces - copied to Old Gen when ages reaches tenuring threshold Copyright 2011 Kodewerk Ltd. All rights reserved
  • 12. Kodewerk tm Java Memory Pools Java Performance Services Eden S0 S1 Tenured Perm Young Old Gen Gen Abnormal Situations - memory leaks (loitering objects) - long pause times (heap too big, poor parallelization) - too frequent full GC (zombies, poor throughput) - survivor space flooding (premature promotion) - fragmented tenured space (compaction) - high rates of object creation - etc..... Copyright 2011 Kodewerk Ltd. All rights reserved
  • 13. Kodewerk tm Java Performance Services Puzzler #1 600 Heap Usage after GC (MB) 500 400 300 200 100 1000 2000 3000 4000 Time (seconds) Copyright 2011 Kodewerk Ltd. All rights reserved
  • 14. Kodewerk tm Java Performance Services Puzzler #1 600 Heap Usage after GC (MB) 500 400 300 what happened here? 200 100 1000 2000 3000 4000 Time (seconds) Copyright 2011 Kodewerk Ltd. All rights reserved
  • 15. Kodewerk tm GC Log Fragment Java Performance Services 21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K- >89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02, real=0.32 secs] 163.028: [GC 163.028: [DefNew Desired survivor size 115671040 bytes, new threshold 15 (max 15) - age 1: 736 bytes, 736 total - age 2: 112 bytes, 848 total - age 4: 40 bytes, 888 total - age 6: 232 bytes, 1120 total - age 7: 32 bytes, 1152 total - age 11: 96 bytes, 1248 total : 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] Heap def new generation total 451968K, used 193472K [0x10020000, 0x39620000, 0x39620000) eden space 226048K, 85% used [0x10020000, 0x1bd0fe48, 0x1dce0000) from space 225920K, 0% used [0x1dce0000, 0x1dce0560, 0x2b980000) to space 225920K, 0% used [0x2b980000, 0x2b980000, 0x39620000) tenured generation total 677888K, used 443015K [0x39620000, 0x62c20000, 0x62c20000) the space 677888K, 65% used [0x39620000, 0x546c1d78, 0x546c1e00, 0x62c20000) compacting perm gen total 36608K, used 36480K [0x62c20000, 0x64fe0000, 0x66c20000) the space 36608K, 99% used [0x62c20000, 0x64fc0290, 0x64fc0400, 0x64fe0000) No shared spaces configured. Copyright 2011 Kodewerk Ltd. All rights reserved
  • 16. Kodewerk tm Java Performance Services Full GC 21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K- >89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02, real=0.32 secs] Full GC requested @, started @ Copyright 2011 Kodewerk Ltd. All rights reserved
  • 17. Kodewerk tm Java Performance Services Full GC 21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K- >89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02, real=0.32 secs] tenured space statistics perm space statistics - other stats are for the entire heap Copyright 2011 Kodewerk Ltd. All rights reserved
  • 18. Kodewerk tm Java Performance Services Full GC 21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K- >89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02, real=0.32 secs] - occupancy before->after collection (memory pool configured size) - reporting on tenured, perm memory pools plus total for all Java heap spaces Copyright 2011 Kodewerk Ltd. All rights reserved
  • 19. Kodewerk tm Java Performance Services Full GC 21.026: [Full GC 21.026: [Tenured: 87725K->89582K(146212K), 0.3151328 secs] 117886K- >89582K(243748K), [Perm : 30974K->30958K(30976K)], 0.3152271 secs] [Times: user=0.31 sys=0.02, real=0.32 secs] - pause time statistics for tenured and all Java heap Copyright 2011 Kodewerk Ltd. All rights reserved
  • 20. Kodewerk tm GC Log Fragment Java Performance Services 163.028: [GC 163.028: [DefNew Desired survivor size 115671040 bytes, new threshold 15 (max 15) - age 1: 736 bytes, 736 total - age 2: 112 bytes, 848 total - age 4: 40 bytes, 888 total - age 6: 232 bytes, 1120 total - age 7: 32 bytes, 1152 total - age 11: 96 bytes, 1248 total : 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] young gen statistics statistics for all Java heap Copyright 2011 Kodewerk Ltd. All rights reserved
  • 21. Kodewerk tm GC Log Fragment Java Performance Services 163.028: [GC 163.028: [DefNew Desired survivor size 115671040 bytes, new threshold 15 (max 15) - age 1: 736 bytes, 736 total - age 2: 112 bytes, 848 total - age 4: 40 bytes, 888 total - age 6: 232 bytes, 1120 total - age 7: 32 bytes, 1152 total - age 11: 96 bytes, 1248 total : 226048K->1K(451968K), 0.0018054 secs] 669064K->443016K(1129856K), 0.0018580 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] surivor space sizing and tenuring thresholds breakdown of bytes @ age Copyright 2011 Kodewerk Ltd. All rights reserved
  • 22. Kodewerk tm GC Log Fragment Java Performance Services Heap def new generation total 451968K, used 193472K [0x10020000, 0x39620000, 0x39620000) eden space 226048K, 85% used [0x10020000, 0x1bd0fe48, 0x1dce0000) from space 225920K, 0% used [0x1dce0000, 0x1dce0560, 0x2b980000) to space 225920K, 0% used [0x2b980000, 0x2b980000, 0x39620000) tenured generation total 677888K, used 443015K [0x39620000, 0x62c20000, 0x62c20000) the space 677888K, 65% used [0x39620000, 0x546c1d78, 0x546c1e00, 0x62c20000) compacting perm gen total 36608K, used 36480K [0x62c20000, 0x64fe0000, 0x66c20000) the space 36608K, 99% used [0x62c20000, 0x64fc0290, 0x64fc0400, 0x64fe0000) No shared spaces configured. - breakdown of occupancy and configured size of each memory pool - pointer values describing each space (for debugging) Copyright 2011 Kodewerk Ltd. All rights reserved
  • 23. Kodewerk tm Java Performance Services Puzzler #2 0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]     0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K- >6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]     6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]     9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]   11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]   15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]   19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]   19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen: 36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]   19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]   20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]   20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]   20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]   21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]   21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]   21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen: 36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]   Copyright 2011 Kodewerk Ltd. All rights reserved
  • 24. Kodewerk tm Java Performance Services Puzzler #2 0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]     0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K- >6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]     6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]     9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]   11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]   15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]   19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]   19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen: 36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]   19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]   20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]   20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]   20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]   21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]   21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]   21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen: 36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]   Copyright 2011 Kodewerk Ltd. All rights reserved
  • 25. Kodewerk tm Java Performance Services Puzzler #2 0.194: [GC [PSYoungGen: 10489K->720K(305856K)] 10489K->720K(1004928K), 0.0061190 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]     0.200: [Full GC (System) [PSYoungGen: 720K->0K(305856K)] [ParOldGen: 0K->594K(699072K)] 720K->594K(1004928K) [PSPermGen: 6645K- >6641K(204800K)], 0.0516540 secs] [Times: user=0.10 sys=0.00, real=0.06 secs]     6.184: [GC [PSYoungGen: 262208K->14797K(305856K)] 262802K->15392K(1004928K), 0.0354510 secs] [Times: user=0.18 sys=0.04, real=0.03 secs]     9.549: [GC [PSYoungGen: 277005K->43625K(305856K)] 277600K->60736K(1004928K), 0.0781960 secs] [Times: user=0.56 sys=0.07, real=0.08 secs]   11.768: [GC [PSYoungGen: 305833K->43645K(305856K)] 322944K->67436K(1004928K), 0.0584750 secs] [Times: user=0.40 sys=0.05, real=0.06 secs]   15.037: [GC [PSYoungGen: 305853K->43619K(305856K)] 329644K->72932K(1004928K), 0.0688340 secs] [Times: user=0.42 sys=0.01, real=0.07 secs]   19.372: [GC [PSYoungGen: 273171K->43621K(305856K)] 302483K->76957K(1004928K), 0.0573890 secs] [Times: user=0.41 sys=0.01, real=0.06 secs]   19.430: [Full GC (System) [PSYoungGen: 43621K->0K(305856K)] [ParOldGen: 33336K->54668K(699072K)] 76957K->54668K(1004928K) [PSPermGen: 36356K->36296K(204800K)], 0.4569500 secs] [Times: user=1.77 sys=0.02, real=0.46 secs]   19.924: [GC [PSYoungGen: 4280K->128K(305856K)] 58949K->54796K(1004928K), 0.0041070 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   19.928: [Full GC (System) [PSYoungGen: 128K->0K(305856K)] [ParOldGen: 54668K->54532K(699072K)] 54796K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.3531480 secs] [Times: user=1.19 sys=0.10, real=0.35 secs]   20.284: [GC [PSYoungGen: 4280K->64K(305856K)] 58813K->54596K(1004928K), 0.0040580 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   20.288: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54532K->54532K(699072K)] 54596K->54532K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2360580 secs] [Times: user=1.01 sys=0.01, real=0.24 secs]   20.525: [GC [PSYoungGen: 4280K->96K(305856K)] 58813K->54628K(1004928K), 0.0030960 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.528: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54532K->54533K(699072K)] 54628K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2311320 secs] [Times: user=0.88 sys=0.00, real=0.23 secs]   20.760: [GC [PSYoungGen: 4280K->96K(305856K)] 58814K->54629K(1004928K), 0.0034940 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   20.764: [Full GC (System) [PSYoungGen: 96K->0K(305856K)] [ParOldGen: 54533K->54533K(699072K)] 54629K->54533K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2381600 secs] [Times: user=0.85 sys=0.01, real=0.24 secs]   21.201: [GC [PSYoungGen: 5160K->354K(305856K)] 59694K->54888K(1004928K), 0.0019950 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]   21.204: [Full GC (System) [PSYoungGen: 354K->0K(305856K)] [ParOldGen: 54533K->54792K(699072K)] 54888K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2358570 secs] [Times: user=0.98 sys=0.01, real=0.24 secs]   21.442: [GC [PSYoungGen: 4280K->64K(305856K)] 59073K->54856K(1004928K), 0.0022190 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.444: [Full GC (System) [PSYoungGen: 64K->0K(305856K)] [ParOldGen: 54792K->54792K(699072K)] 54856K->54792K(1004928K) [PSPermGen: 36300K->36300K(204800K)], 0.2475970 secs] [Times: user=0.95 sys=0.00, real=0.24 secs]   21.773: [GC [PSYoungGen: 11200K->741K(305856K)] 65993K->55534K(1004928K), 0.0030230 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]   21.776: [Full GC (System) [PSYoungGen: 741K->0K(305856K)] [ParOldGen: 54792K->54376K(699072K)] 55534K->54376K(1004928K) [PSPermGen: 36538K->36537K(204800K)], 0.2550630 secs] [Times: user=1.05 sys=0.00, real=0.25 secs]   Copyright 2011 Kodewerk Ltd. All rights reserved
  • 26. Kodewerk tm Java Performance Services Puzzler #3 848463.696: [GC [1 CMS-initial-mark: 989633K(1075200K)] 1003551K(1397760K), 6.3838946 secs] [Times: user=0.06 sys=0.01, real=6.39 secs] 848470.085: [CMS-concurrent-mark-start] 848605.512: [CMS-concurrent-mark: 135.377/135.426 secs] [Times: user=7.83 sys=9.92, real=135.44 secs] 848605.512: [CMS-concurrent-preclean-start] 848605.726: [CMS-concurrent-preclean: 0.207/0.214 secs] [Times: user=0.06 sys=0.00, real=0.22 secs] 848605.726: [CMS-concurrent-abortable-preclean-start]  CMS: abort preclean due to time 848610.846: [CMS-concurrent-abortable-preclean: 1.014/5.120 secs] [Times: user=1.05 sys=0.08, real=5.13 secs] 848610.871: [GC[YG occupancy: 160577 K (322560 K)]848610.871: [Rescan (parallel) , 0.1280728 secs]848610.999: [weak refs processing, 1.3120556 secs] [1 CMS-remark: 989633K(1075200K)] 1150210K(1397760K), 1.4413516 secs] Application runtime details can help threads stall for 60 seconds during pause Copyright 2011 Kodewerk Ltd. All rights reserved
  • 27. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... ???? Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] Copyright 2011 Kodewerk Ltd. All rights reserved
  • 28. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] Copyright 2011 Kodewerk Ltd. All rights reserved
  • 29. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] Copyright 2011 Kodewerk Ltd. All rights reserved
  • 30. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] 147.823 + 0.8074580 = 148.630 ~= 148.632 Copyright 2011 Kodewerk Ltd. All rights reserved
  • 31. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] Copyright 2011 Kodewerk Ltd. All rights reserved
  • 32. Kodewerk tm Java Performance Services Puzzler #4 147.823: [Full GC [PSYoungGen: 7662K->0K(72896K)] [PSOldGen: 169093K->62518K(174784K)] 176755K- >62518K(247680K) [PSPermGen: 27342K->27342K(55232K)], 0.8074580 secs] 148.632: [Full GC [PSYoungGen: 0K->0K(57856K)] [PSOldGen: 62518K->52158K(174784K)] 62518K- >52158K(232640K) [PSPermGen: 27342K->26866K(61056K)], 0.3614330 secs] java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid18706.hprof ... ???? Heap dump file created [83874513 bytes in 3.330 secs] 160.552: [Full GC [PSYoungGen: 2624K->0K(44800K)] [PSOldGen: 86916K->76124K(174784K)] 89540K- >76124K(219584K) [PSPermGen: 26902K->26902K(58880K)], 0.2801510 secs] [Times: user=0.28 sys=0.00, real=0.28 secs] Copyright 2011 Kodewerk Ltd. All rights reserved
  • 33. Kodewerk tm Java Performance Services Case Study Copyright 2011 Kodewerk Ltd. All rights reserved
  • 34. Questions Copyright 2011 Kodewerk Ltd. All rights reserved

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. turn them on in production\n
  8. + many others\n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n