Heap Size Variations

Jon Masamitsu Jon.Masamitsu at Sun.COM
Wed Mar 11 13:46:55 PDT 2009


I think you are seeing variations in the survivor spaces
in the young gen.  If the two survivors are of different
sizes (they are adjusted by GC ergonomics) you see something
like this.  Actually the survivor spaces also grow and
shrink so will cause changes).  Turn off the GC ergonomics
(-XX:-UseAdaptiveSizePolicy). That will fix the sizes to
the initial sizes.

On 03/11/09 12:37, Peng Du wrote:
> Hello, guys
> 
> I am doing some analysis on the parallel GC for the old generation. But 
> I am confused by the output of -XX:+PrintGCDetails. I intentionally set 
> the size of the heap to be [-Xms8m -Xmx8m]. However, the GC log 
> indicated that the size of heap was varying in between every GC (minor 
> and full). 
> 
> For example:
> ===============================================================================================
> [GC [PSYoungGen: 768K->128K(896K)] 768K->320K(8064K), 0.0075060 secs] 
> [Times: user=0.01 sys=0.01, real=0.01 secs]
> [GC [PSYoungGen: 876K->128K(896K)] 1069K->406K(8064K), 0.0060870 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 896K->128K(896K)] 1174K->507K(8064K), 0.0058220 secs] 
> [Times: user=0.01 sys=0.00, real=0.01 secs]
> [GC [PSYoungGen: 896K->128K(512K)] 1390K->699K(7680K), 0.0019780 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 512K->64K(704K)] 1083K->727K(7872K), 0.0012320 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 445K->154K(704K)] 1109K->838K(7872K), 0.0017830 secs] 
> [Times: user=0.00 sys=0.00, real=0.01 secs]
> [GC [PSYoungGen: 538K->144K(704K)] 1222K->848K(7872K), 0.0019050 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 416K->32K(704K)] 1262K->882K(7872K), 0.0025930 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 416K->32K(704K)] 1282K->906K(7872K), 0.0025650 secs] 
> [Times: user=0.00 sys=0.00, real=0.01 secs]
> [GC [PSYoungGen: 416K->176K(704K)] 1290K->1058K(7872K), 0.0022590 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 560K->176K(704K)] 1442K->1098K(7872K), 0.0029060 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> [GC [PSYoungGen: 560K->64K(704K)] 1482K->1142K(7872K), 0.0014460 secs] 
> [Times: user=0.00 sys=0.00, real=0.00 secs]
> .......................
> ===============================================================================================
> 
> My analysis requires the heap size to be fixed as well as the relative 
> ratio of each generation within the heap. Is there a way I can strictly 
> restrict the sizes of the heap and each generation?
> 
> Thanks!
> 
> 
> 
> Peng Du
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> hotspot-gc-use mailing list
> hotspot-gc-use at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use



More information about the hotspot-gc-use mailing list