What are -XX:NewSize and -XX:MaxNewSize JVM parameters in java



In this core java tutorial we will learn What are -XX:NewSize and -XX:MaxNewSize JVM parameters in java, And differences between -XX:NewSize and -XX:MaxNewSize JVM parameters in java.

Contents of page >
  • What is -XX:NewSize JVM parameter in java?
    • Examples of using -XX:NewSize VM (JVM) option in java >
  • What is -XX:MaxNewSize JVM parameter in java?
    • Examples of using -XX:MaxNewSize VM option in java >
  • What are differences between -XX:NewSize and -XX:MaxNewSize JVM parameters in java?



Before learning about -XX:NewSize and -XX:MaxNewSize JVM parameters in java we must know about java heap memory structure.
Earlier we read about JVM Heap memory (Hotspot heap structure)  in java consists of following elements>
  1. Young Generation
    • 1a) Eden,
    • 1b) S0 (Survivor space 0)
    • 1c) S1 (Survivor space 1)
  2. Old Generation (Tenured)
  3. Permanent Generation.


What is -XX:NewSize JVM parameter in java?
-XX:NewSize - NewSize is minimum size of young generation which is allocated at initialization of JVM.

Note : If you have specified -XX:NewRatio than minimum size of the young generation is allocated automatically at initialization of JVM.

Default value of -XX:NewSize is -Xmx/5

Learn how to pass vmargs (VM parameters) to java program in eclipse?

Examples of using -XX:NewSize  VM (JVM) option in java >
Example1 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =512 MyJavaProgram
It will set initial value of Permanent Space as 512 bytes to JVM.

Example2 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =512k MyJavaProgram
It will set initial value of Permanent Space as 512 kilobytes to JVM

Example3 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =512m MyJavaProgram
It will set initial value of Permanent Space as 512 megabytes to JVM

Example4 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =1g MyJavaProgram
It will set initial value of Permanent Space as 512 gigabyte to JVM





What is -XX:MaxNewSize JVM parameter in java?
-XX:MaxNewSize - MaxNewSize is the maximum size of young generation that JVM can use.

Default value of -XX:MaxNewSize is -Xmx/5


Examples of using -XX:MaxNewSize  VM (JVM) option in java >
Example1 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =512 MyJavaProgram
It will set initial value of Permanent Space as 512 bytes to JVM.

Example2 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =512k MyJavaProgram
It will set initial value of Permanent Space as 512 kilobytes to JVM

Example3 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =512m MyJavaProgram
It will set initial value of Permanent Space as 512 megabytes to JVM

Example4 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =1g MyJavaProgram
It will set initial value of Permanent Space as 512 gigabyte to JVM


What are differences between -XX:NewSize and -XX:MaxNewSize JVM parameters in java?

-XX:NewSize JVM parameter
-XX:MaxNewSize JVM parameter
NewSize is minimum size of young generation which is allocated at initialization of JVM.
MaxNewSize is the maximum size of young generation that JVM can use.
Default value of -XX:NewSize is -Xmx/5
Default value of -XX:MaxNewSize is -Xmx/5
Example1 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =512m MyJavaProgram
It will set initial value of Permanent Space as 512 megabytes to JVM

Example2 of using -XX:NewSize  VM (JVM) option in java >
java -XX:NewSize =1g MyJavaProgram
It will set initial value of Permanent Space as 512 gigabyte to JVM
Example1 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =512m MyJavaProgram
It will set initial value of Permanent Space as 512 megabytes to JVM

Example2 of using -XX:MaxNewSize  VM (JVM) option in java >
java -XX:MaxNewSize =1g MyJavaProgram
It will set initial value of Permanent Space as 512 gigabyte to JVM





Summary -


So in this core java tutorial we learned what are -XX:NewSize and -XX:MaxNewSize JVM parameters in java, And differences between -XX:NewSize and -XX:MaxNewSize JVM parameters in java.


Having any doubt? or you liked the tutorial! Please comment in below section.
Please express your love by liking JavaMadeSoEasy.com (JMSE) on facebook, following on google+ or Twitter.



RELATED LINKS>

 

Different type of garbage collectors in java>

>Serial collector / Serial GC (Garbage collector) in java

>Throughput GC (Garbage collector) or Parallel collector in java

>Concurrent Mark Sweep (CMS) collector / concurrent low pause garbage collector in java

>G1 garbage collector / Garbage first collector in java

>PS Scavenge and PS MarkSweep



Different between garbage collectors in java>

>Difference between Serial GC vs Throughput GC (Garbage collector) in java



JVM in detail - Garbage collection & heap structure >

>JVM Heap memory (Hotspot heap structure) with diagram in java


Young, Old (tenured) and Permanent Generation >

>What are Young, Old (tenured) and Permanent Generation in JVM in java


Minor, Major and Full garbage collection >

>What are Minor, Major and Full garbage collection in JVM in java



Important VM parameters >

>Most important and frequently used VM (JVM) PARAMETERS with examples in JVM Heap memory in java

>What are -Xms and -Xmx JVM parameters in java, And differences between them with examples

>-Xmn JVM parameters in java with examples - Setting young generation size

>What is -XX:NewRatio JVM parameters in java with examples - Setting young and old generation ratio

>What are -XX:NewSize and -XX:MaxNewSize JVM parameters in java

>-XX:SurvivorRatio JVM parameters in java with examples - Setting survivor spaces size

>-XX:+AggressiveHeap VM parameters

>What are -XX:PermSize and -XX:MaxPermSize JVM parameters with examples in java | Differences

>Solve java.lang.OutOfMemoryError : unable to create new native Thread - Xss JVM option

More VM parameters >

>How to use -verbose:gc VM argument

>-Xverify option in java


eEdit
Must read for you :