RAM Usage + Other Confusion

Tyler 123

New Member
Oct 3, 2022
5
0
1
Hi,
Im a complete noob when it comes to ProxMox and trying to understand a few items.

1) I currently have 32gb of RAM installed on this machine. I cannot figure out how much RAM Proxmox itself is using, but i have 2 Vms running Win 11 and nothing at all on them is running. VM #1 is running 4gb of ram, and it's showing as 2gb is being used at idle, or 50%. VM #2 has 12gb of ram assigned, but using 10gb or 85% and i have no idea why PM is showing that. When I login to the VM, it's showing only 20% usage in idle state, or 2gb which makes the other one as far as idle state.
I'm trying to understand why of my 32gb of ram, 85% or 25gb is being used and literally nothing is going on other than 2 idle Win11 Vms.

2) When talking about Hardware utilize, I am running 1 500gb NVM and 2x 4tb discs. Promox is installed on the 500gb nvme. However, the "Local" only has a 100gb which is going to be eating up quickly for me due to backups (until i get a NFS), IoS images, etc There is currently 360gb free on the "Local LVM" and none is being used. how can i expand the storage of the Local?

Thank you for your help!
 
Hey there!

First, to answer your first question:
  1. Have you installed the qemu guest agent on the Windows VMs and enabled memory ballooning? If not, neither Proxmox VE nor Qemu have any knowledge about how much RAM the guest is actually using and therefore the guest agent is needed for proper memory usage reports to the hypervisor. With memory balloning enabled (which it is by default), the VM will also report all the unused memory regions to the hypervisor and therefore the VM is only assigned the memory it currently needs. You can read more about this at [1].
  2. Are you passing through a GPU/other PCIe devices? If so, memory ballooning will not work as the whole memory for the IOMMU for the GPU/PCIe device needs to be allocated at all times for the guest sytem.

Ad 2):
First and foremost, I wouldn't recommend you to have backups of your VM on the same disk, especially on the same filesystem, if you're preparing for disaster recovery. Otherwise, the local storage is just a directory storage (by default). You can use other storages for your VMs as well, e.g. your local-lvm storage, and setup more storage, e.g. a ZFS RAID on your remaining HDDs. You can read more about the default storage setup on Proxmox VE installations at [2].

[1] https://pve.proxmox.com/wiki/Dynamic_Memory_Management#Ballooning
[2] https://pve.proxmox.com/pve-docs/pve-admin-guide.html#chapter_lvm
 
Hey there!

First, to answer your first question:
  1. Have you installed the qemu guest agent on the Windows VMs and enabled memory ballooning? If not, neither Proxmox VE nor Qemu have any knowledge about how much RAM the guest is actually using and therefore the guest agent is needed for proper memory usage reports to the hypervisor. With memory balloning enabled (which it is by default), the VM will also report all the unused memory regions to the hypervisor and therefore the VM is only assigned the memory it currently needs. You can read more about this at [1].
  2. Are you passing through a GPU/other PCIe devices? If so, memory ballooning will not work as the whole memory for the IOMMU for the GPU/PCIe device needs to be allocated at all times for the guest sytem.

Ad 2):
First and foremost, I wouldn't recommend you to have backups of your VM on the same disk, especially on the same filesystem, if you're preparing for disaster recovery. Otherwise, the local storage is just a directory storage (by default). You can use other storages for your VMs as well, e.g. your local-lvm storage, and setup more storage, e.g. a ZFS RAID on your remaining HDDs. You can read more about the default storage setup on Proxmox VE installations at [2].

[1] https://pve.proxmox.com/wiki/Dynamic_Memory_Management#Ballooning
[2] https://pve.proxmox.com/pve-docs/pve-admin-guide.html#chapter_lvm
Hi There, thank you for your help!
I've attached a couple screenshots. The QEMU appears to be enabled and i've installed the Virto IO drivers. Balooning is turned on as well under the memory tab.
It's just very strange because VM #1 only has 4gb assigned to it, logging into the VM task manager shows 50% utilization and that's exactly what PM is reporting. Though on VM #2. It's only reporting 20% on the task manager but PM is reporting over 80% utilization.

Currently no PCIe or GPU is connected / being passed through.

As for the second one. Thank you! I will look into that one :)

One item you mentioned is that i could use the "local-LVM" to run virtual machines off of. My hope was to run the Vms off the NVME drive (Local-LVM) and use the Spinning drives as the actual storage. for thoes Vms. Is that possibe? I think the two windows Vms i have done incorrectly.
Both the OS and the DIsk tabs are set to my ZFSPool (Spinning disk, mirror 1 4tb (8 total)). Whereas the NVME has nothing on it, it's empty aside from Proxmox OS itself running on it and the 100gb being used for the Local.
Would this mean that in order to run a VM off the NVME for it to be faster, i would edit the "System" Tab "TPM" and "EFI" storage to the NVME (local-lvm) and the "Disks" tab > Storage Option to the ZFS pool?

*EDIT* After doing more research on the topic. What i'm seeing is ZFS eats up a lot of unused memory. if a host needs more ram, ZFS will release this ram to the hots to use. Makes logical sense to me. I was just worried after having 2 VMs with an allocated amount of 16gb total it showing 27-30gb being used in the summary.
So all I have left to figure out then is the running a VM off the NVME rather than the spinning disk.
 

Attachments

  • qemu enabled.PNG
    qemu enabled.PNG
    19.1 KB · Views: 11
Last edited:
That seems strange indeed. Have you checked that the VirtIO drivers and the guest tools have been installed correctly? Does it say anywhere in your VM summary that "guest agent not running" (usually at the IP addresses section)? There's also a Windows 11/2022 best practices section in the Proxmox VE Wiki here [1], where the steps for setting up all of them are described. I've encountered some issues with some Windows installations, where the currently most recent VirtIO ISO (v0.1.262) had a problem when installing, because there were some scripts missing, so you might check out for something like that and fall back to another version of the VirtIO ISO.

I'm sorry, I'm having trouble understanding how you want to use your disk storages. If you use the local-lvm storage, which uses your NVMe drive from your description, the disk image for the VM will be on the SSD. You have to set that up in the Hardware Tab and you can also move a disk image between storage when clicking on them in the WebGUI and select Disk Action > Move Storage. You can also add more disks for your system in the Hardware tab, e.g. add disk images for those VMs. The EFI and TPM disks shouldn't have a big performance impact except for boot time, as far as I know at least. If you want to create backups on the ZFS RAID, then you can set them up as another storage in the WebGUI and select them when doing a backup or creating a backup job.

I hope I could help you on your Proxmox journey. For future posts, I would suggest you to create separate threads for each topic as it will be easier for other people to follow the thread afterwards and also encourages more people to respond to your questions ;)

[1] https://pve.proxmox.com/wiki/Windows_2022_guest_best_practices
 

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!