RAM Usage

hi,

the ram usage in the gui shows the ram usage of the kvm process running on the hypervisor (not the "real" ram usage inside the guest)
 
the GUI also shows the CACHED guest memory..

execute "echo 3 > /proc/sys/vm/drop_caches" inside the guest.

than, see the GUI again!!!
 
I was also wondering about the same, this is how it looks like on my machine:

1) Debian guest VM - The VM says memory usage 3.72 GiB

1582011707614.png

2) However there is almost nothing running on the machine and the guest VM reports much less memory usage:

root@proxmox-docker:~# free
total used free shared buff/cache available
Mem: 4041092 753000 109164 10740 3178928 3033280
Swap: 4194300 4132 4190168

I'm wondering if the 'Memory usage' indicator would improve if I installed a Guest Agent into the VM?
 
I was also wondering about the same, this is how it looks like on my machine:

1) Debian guest VM - The VM says memory usage 3.72 GiB

View attachment 15058

2) However there is almost nothing running on the machine and the guest VM reports much less memory usage:

root@proxmox-docker:~# free
total used free shared buff/cache available
Mem: 4041092 753000 109164 10740 3178928 3033280
Swap: 4194300 4132 4190168

I'm wondering if the 'Memory usage' indicator would improve if I installed a Guest Agent into the VM?

Linux Kernel will always cache all the available memory for sleeping process, that's way the Proxmox GUI always says all memory is in-use. These cached memory will be take back for the proxmox host by the native bollooning driver inside the guest when the available physical memory is below 20%.. So, don't worry about this cached memory...

Installing Guest Agent will only help to other integrations between the host and guests, like snapshots, backup, shutdown, etc...
 
Last edited:
Okay, I heard that somewhere, that Linux kernel tends to preoccupy almost all available memory for performance reasons.

I don't think I have any sleeping processes because the server is literally empty. Nothing running on it, definitely not 4GBs. But I can imagine that the memory is prepared for future processes - if that makes sense?
 
Okay, I heard that somewhere, that Linux kernel tends to preoccupy almost all available memory for performance reasons.

I don't think I have any sleeping processes because the server is literally empty. Nothing running on it, definitely not 4GBs. But I can imagine that the memory is prepared for future processes - if that makes sense?

Yes, even haven't absolutely nothing running inside the guest, the linux kernel will buffer/cache most of the available memory..

you can execute the command: "echo 3 > /proc/sys/vm/drop_caches" inside the guest.. you will see the cached memory instantly drop, the proxmox GUI will show the correct memory used (for a short time, until the guest starts to buffer memory again)... but it is not recommended for performance reasons...

Proxmox GUI will always show the total memory consumed inside the guest, including the buffers/cache because the proxmox host cannot determine what is and what isn't a paged memory used by the guest on that moment, this is a task for the bollooning driver.. when the proxmox host request physical memory not used by the guests... (> 80% )
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!