is it correct Heap Structure on basis of given JVM Parameters ?
Мамонтов Иван
ivan.mamontov at gmail.com
Thu May 1 10:12:15 UTC 2014
I think it will be very useful to add the following flags:
- -XX:+PrintCommandLineFlags Print flags specified on command line or
set by ergonomics
- -XX:+PrintVMOptions Print flags that appeared on the command line
- -XX:+PrintFlagsFinal Print all VM flags after argument
and ergonomic processing
This will avoid problems with implicit VM options.
java -XX:+PrintVMOptions -XX:+PrintCommandLineFlags -XX:+PrintFlagsFinal
-version
VM option '+PrintFlagsFinal'
VM option '+PrintVMOptions'
VM option '+PrintCommandLineFlags'
-XX:InitialHeapSize=262900032 -XX:MaxHeapSize=4206400512
-XX:ParallelGCThreads=4 -XX:+PrintCommandLineFlags -XX:+PrintFlagsFinal
-XX:+PrintVMOptions -XX:+UseCompressedOops -XX:+UseParallelGC
[Global flags]
uintx AdaptivePermSizeWeight = 20
{product}
uintx AdaptiveSizeDecrementScaleFactor = 4
{product}
uintx AdaptiveSizeMajorGCDecayTimeScale = 10
{product}
uintx AdaptiveSizePausePolicy = 0
{product}
...
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
It works on java from 1.6.0_30 to 1.7.0_45.
2014-04-30 6:16 GMT+04:00 Jon Masamitsu <jon.masamitsu at oracle.com>:
> Vipin,
>
> If you want to see the heap after it has fully expanded, use -Xms2048m
> (not -Xms32m) and
> -XX:NewSize=64m (not -XX:NewSize=8m) and add -XX:PrintGCDetails -version
> to your java
> command line. You'll see something like this
>
> $JAVA_HOME/bin/java -XX:+PrintGCDetails -Xms2048m -XX:NewSize=64m
> -XX:NewRatio=2 -XX:MaxNewSize=64m -XX:SurvivorRatio=25 -Xmx2048m -version
> java version "1.7.0"
> Java(TM) SE Runtime Environment (build 1.7.0-b147)
> Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode)
> Heap
> PSYoungGen total 63168K, used 2432K [0xf7c00000, 0xfbc00000,
> 0xfbc00000)
> eden space 60800K, 4% used [0xf7c00000,0xf7e600d0,0xfb760000)
> from space 2368K, 0% used [0xfb9b0000,0xfb9b0000,0xfbc00000)
> to space 2368K, 0% used [0xfb760000,0xfb760000,0xfb9b0000)
> PSOldGen total 2031616K, used 0K [0x7bc00000, 0xf7c00000,
> 0xf7c00000)
> object space 2031616K, 0% used [0x7bc00000,0x7bc00000,0xf7c00000)
> PSPermGen total 16384K, used 1356K [0x77c00000, 0x78c00000,
> 0x7bc00000)
> object space 16384K, 8% used [0x77c00000,0x77d532d0,0x78c00000)
>
> Jon
>
>
>
> On 4/29/2014 2:54 AM, Sharma, Vipin K wrote:
>
> HI All
>
>
>
> In my Java application ( JDK 7) JVM parameters are
>
> -Xms32m -Xmx2048m -Xss1m -XX:+UseParallelGC -XX:NewRatio=2 -XX:NewSize=8m
> -XX:MaxNewSize=64m -XX:SurvivorRatio=25 -XX:+UseAdaptiveSizePolicy
>
>
>
> Xmx2048m : Maximum Heap memory is 2GB
>
> MaxNewSize=64m : Maximum Young Generation Size 64 MB
>
> NewRatio=2 : Old Generation Size will be double of
> Young generation size so Maximum Old generation Size will be 64*2
>
>
>
> As per my understanding below will be Heap structure when all parts of
> heap are allocated maximum memory
>
> Young(64 M ) + Old ( 128 M) + Rest Memory only for Permanent
> Generation Area
>
>
>
> I feel we are not using heap memory efficiently more than 1.8 GB is
> allocated for Permanent Generation only.
>
> Is it correct understanding ? if not then what will be heap structure in
> case we give max memory to all parts?
>
>
>
>
>
> Thanks,
>
> Vipin Sharma
>
>
> _______________________________________________
> hotspot-gc-use mailing listhotspot-gc-use at openjdk.java.nethttp://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>
>
> _______________________________________________
> hotspot-gc-use mailing list
> hotspot-gc-use at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>
--
Thanks,
Ivan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20140501/5a06ebef/attachment.html>
More information about the hotspot-gc-use
mailing list