Server memory is 32 GB. I configure monitoring a process memory usage using the processes probe. Memory usage of the process is shown as 38 GB.
Why is the process memory usage greater than the server memory?
Release : 20.4
Component : UIM - PROCESSES
UNIX/Linux
A process can be larger than physical memory on the machine.
Virtual memory is a technique that allows the execution of processes that are not completely in memory. One major advantage of this scheme is that programs can be larger than physical memory.
There's a hard limit for all users in the system, set by the administrator. Then, there's a soft limit, which each user can set themselves. These limits remain in place until they're changed.
The values monitored by the processes probe are the Virtual Memory (Real + Swap).
This value should be similar to that reported by the top command in Linux/UNIX
VIRT -- Virtual Image (kb) The total amount of virtual memory used by the task. It includes all code, data and shared libraries plus pages that have been swapped out. (Note: you can define the STATSIZE=1 environment variable and the VIRT will be calculated from the /proc/#/state VmSize field.) VIRT = SWAP + RES.
We use the ‘vsz’ parameter from the following command: /bin/ps -e -o pid,ppid,user,pri,vsz,time,args
From the ‘ps’ man page: vsz VSZ virtual memory size of the process in KiB (1024-byte units).