Profile Image
eduardo freire

java process measured RAM by AIX keeps growing

Good morning!

My company supplied a very important system for an automobile plant in Brazil, running on AIX / IBM JDK java 8. We are having a hard time to correctly parametrize the JVM in order to keep the used RAM in a stable value, it keeps growing and growing over the days. Your service does not report any memory leak, what is very good, but somehow the memory usage still increases. What can be done?

Thank you in advance, Eduardo (freire@csi.ind.br)



Report URL - https://gceasy.io/my-gc-report.jsp?p=c2hhcmVkLzIwMjEvMDcvNy8tLWp2bS10ZWxhLnppcC0tMTAtNDAtMjU=&channel=WEB

  • aix

  • ibmjdk

  • java

  • ram

  • javaprocess

Please Sign In or to post your comment or answer

Profile Image

Ram Lakshmanan

Hello Eduardo!

 Greetings. Apologies for the delayed response.

 

 Your application's KPIs are fantastic:

 

a. GC Throughput: 99.945%

b. Avg. GC pause time: 4.62ms

c. Max. GC pause time: 72.4ms

 

 Below is your heap usage graph. Even though heap usage grows, when full GC (red triangle) runs, heap usage drops all the way to the bottom ~40MB. 

 

 

 All these indicate your application's memory & GC performance is at the optimal level. 

 

 Infact, I even have a suggestion. Given that you have such fantastic KPIs and beautiful sawtooth pattern of heap usage, if you want you can be optimistic to reduce your heap size by 50% and study the behaviour.

 

 Thanks.

Profile Image

eduardo freire

Thank you Ram. What bothers me the most is that we are running this very same application using exactly the same jvm parametrization at a Linux machine, and the result is just as expected, a very well behaved ram consumption, different of what we observe at AIX. Frustating at least.

What would be your suggestion to achieve the same results on AIX  besides the heap reduce ? Any other parametrization?

Best regards, Eduardo

Profile Image

Ram Lakshmanan

Hello Eduardo!

 

 I would like to say it once again: Your application's JVM GC performance is perfect. I don't see any problem. Having said that, let me share few thoughts here:

 

a. Can you share your Linux JVM GC log report here? We can see it's heap usage pattern and compare with AIX behaviour. 

 

b. Are you running on the same version of Java in both Linux and AIX? Because default GC algorithm varies between Java version. Starting from java 8+ default GC algorithm is G1, earlier versions of Java has 'parallel GC' as the default algorith. Can you share the JVM arguments? I could see in AIX, you are using 'parallel GC'.

 

c. What if there increased RAM consumption on this AIX platform is coming from some other process and not from your application? Because your application's heap performance is optimal. You can register for a free 14 day trial of yCrash. It captures 360-degree data and does thorough analysis of all the processes running on the machine and reports the problem.

Profile Image

eduardo freire

Hello Ram!

Tomorrow I will be able to post the Linux gc log file, than we may compare them. Good idea!

I know we are using java 8 on both environments, but will get more precise information tomorrow, monday when back to office.

 

I will register on yCrash and try to use it, thank you.

 

Best regards, Eduardo. 

Profile Image

eduardo freire

The Linux gc information for the very same application here reported was uploaded on https://gceasy.io/my-gc-report.jsp?p=c2hhcmVkLzIwMjEvMDcvMTIvLS1qdm0tdGVsYS56aXAtLTE1LTktMTI=&channel=WEB

 

Best regards, Eduardo

Profile Image

Ram Lakshmanan

Hello Edurado!

 

 I don't see difference between your application's GC performance in AIX and Linux. Look at the metrics below:

 

AIX:

GC Throughput: 99.945%
Avg Pause GC Time: 4.62 ms
Max Pause GC Time: 72.4 ms
Avg creation rate: 13.59 mb/sec


Linux:

GC Throughput: 99.873%
Avg Pause GC Time: 17.2 ms
Max Pause GC Time: 360 ms
Avg creation rate: 12.29 mb/sec

Besides that JVM settings are also identical.

 

Now couple of questions to you:

1. What makes you to think RAM usage is growing in AIX and not in Linux?  

2. If there is proper evidence for that, growth might be attributed to other processes running on the machine and not because of the JVM you have shared here. You need to use yCrash type of tool to do further analysis.

Profile Image

eduardo freire

I will use yCrash, thank you!

Got something else on mind? Post Your Question

Not the answer you're looking for? Browse other questions tagged
  • aix

  • ibmjdk

  • java

  • ram

  • javaprocess