Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does 'MaxRAM' JVM parameter signify?

Tags:

java

linux

jvm

I'm looking at the configuration of a JVM running on a linux server. when I run

java -XX:+PrintFlagsFinal | less | grep -iE 'MaxRam'

Which seems to basically print out just about every parameter the JDK knows about

I see

uint64_t MaxRAM = 137438953472  {pd product}

but I can't seem to find much documentation on this flag.

I found that "{pd product}" signifies "Platform Dependent Product: An officially supported, internal JVM option"

Anyone know exactly what this parameter signifies, or where I can read in more detail about platform specific JVM flags?

Misc details:

Java -version: .

java version "1.6.0_35" Java(TM) SE Runtime Environment (build 1.6.0_35-b10) Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01, mixed mode)

uname -a

Linux [SERVERNAME] 2.6.32-431.17.1.el6.x86_64 #1 [DATE] x86_64 x86_64 x86_64 GNU/Linux

like image 356
Paul Avatar asked Jan 07 '15 09:01

Paul


1 Answers

According to Standard Edition HotSpot Virtual Machine Garbage Collection Tuning Guide document the value in MaxRAM is used to calculate the Default Heap Size if no initial heapsize and max heap size is specified and contains as posted previously

Default Heap Size
Unless the initial and maximum heap sizes are specified on the command line, they are calculated based on the amount of memory on the machine. The proportion of memory to use for the heap is controlled by the command-line options InitialRAMFraction and MaxRAMFraction
[...]
The value of MaxRAM is platform-dependent.

Referring to the The Java Virtual Machine Specification the size of the heap can change, depending of the implementation of the JVM.

The heap may be of a fixed size or may be expanded as required by the computation and may be contracted if a larger heap becomes unnecessary. The memory for the heap does not need to be contiguous. A Java Virtual Machine implementation may provide the programmer or the user control over the initial size of the heap, as well as, if the heap can be dynamically expanded or contracted, control over the maximum and minimum heap size.

And to answer your platform specific JVM flags question:
Java HotSpot VM Options

like image 120
Tobi Tiggers Avatar answered Sep 18 '22 01:09

Tobi Tiggers