Java (Java Agent, Installation, JVM, and Controller Installation)

cancel
Showing results for 
Search instead for 
Did you mean: 

value of Max Available under Node/Memory-->Node name-->heap and garbage collection

Discoverer

value of Max Available under Node/Memory-->Node name-->heap and garbage collection

 

For all our java nodes , I continue to see the value of "Max Available" is less than the -mx set for the jvm

 

Cant find any documentation on what this  metric stands

 

Any one knows what this stands for and why it always shows less than the value of -mx. 

value of Max Available under Node/Memory-->Node name-->heap and garbage collection
1 REPLY 1
AppDynamics Team

Re: value of Max Available under Node/Memory-->Node name-->heap and garbage collection

Hi,

 

AppDynamics uses JMX provided Java to fetch the max available heap. 

 

http://stackoverflow.com/questions/11905220/why-does-the-jvm-heap-usage-max-as-reported-by-jmx-chang...

https://docs.oracle.com/javase/7/docs/api/java/lang/management/MemoryUsage.html

 

It depends on JVMs implementation of the value of HeapMemoryUsage.max attribute on how much this value would be.

You could also validate it against the HeapMemoryUsage.max attribute value in JConsole.

 

In some JVM implementations, this value is Xmx - PS Survivor Space.MaxAvailable

 

For Example, Xmx = 12288m and Heap.Max Available is displayed as 11947m.
Check PS Survivor Space.MaxAvailable and it is 341m.

Heap.Max Available = Xmx-PS Survivor Space.MaxAvailable = 12288-341 = 11947m

 

Please see attached the screenshots.

 

Regards,
Saradhi