Gateway vs Java Process Memory Usage

I’m seeing a massive difference between the memory usage reported by the gateway and that used by the gateway’s Java process.
I’d just like to get an understanding of this and if I can alleviate such a high process memory usage.


Set a lower max in your ignition.conf. The JVM will use all memory available to it during the program’s life, you will see peaks and valleys when it GCs, but memory is never returned to the OS. It belongs to the JVM once it has been used.

The other possibility is you’re using and possibly leaking native memory, but that would eventually result in a crash.

1 Like

Thank Kevin, i’ll reduce the max :slight_smile:
This is only in my local test environment, but I did notice a number of crashes yesterday, however the max memory was set to 10GB of a max 12GB installed. I reduced it already yesterday to 8GB and haven’t had a crash since then.
Are there any guidelines for what I should set it to use?

Eh… I think the best course is to observe and tune. Start with 2gb or 4gb and go from there.

edit: I don’t know anything about your application though, so that might be high or low as a starting point!

No worries, thanks!

My gut-check settings are to arrange for the trough of the sawtooth to be between 30-50 % and the peak of the sawtooth to be 80-90 %. Give or take. With g1gc and 100ms max pause target. In v7.9. I don’t really know the sweet spot with Perspective yet.