On Linux/Unix environment the memory utilization as it is provided by processes probe, is often very large compared to what happens on Windows environment.
When the processes probe is used to measure logmon memory/performance, it gives regularly high values of memory utilization in Linux, which results in incidents being raised for memory consumption on Prod servers.
- why is memory utilization, provided by processes probe, much larger for logmon on Linux compared to other platforms?
- is there an alternative way we should measure memory utilization on Linux to obtain the 'actual' memory utilization (if applicable)?
In the processes probe configuration Setup section, on the CPU and Memory tab, check/enable the Resident Memory box.
This is described in the documentation as:
Resident Memory: (applicable on Linux and Solaris) enables the probe to monitor the RAM used by monitored processes.
On Linux Virtual memory (Size KB on the processes Status panel) seems to be potentially all the memory that the process could address.
This would include device drivers, shared libraries etc.
The Resident Size KB on the processes Status panel is the amount of memory that specifically belongs to that process that is currently resident in memory.
There is a large underlying difference in the platforms that allows the probe to use APIs on Windows. There are no such APIs in use on Linux so most of the work is getting done through shared libraries (which will end up in the Virtual allocation).