memory performance issues in windows vm

zenowl77

Member
Feb 22, 2024
59
8
8
windows VM suffering massive memory performance loss, cannot figure out how to solve it, huge pages helped a little bit but still just terrible performance

ram type: DDR4 2133 should see 17GB/s, getting 4gb/s ranking in at about DDR2-533 level performance, huge pages helped by roughly 25% performance and helped lessen freeze ups but still would like to see at least 10-12GB/s to at least match ddr3

vm memory performance
read: 3975 MB/s
write: 4421 MB/s
copy: 4116 MB/s
Latency: 339 ns

memory integrity, core isolation, etc is disabled and defender is removed, windows is heavily tweaked for performance but i use it for video encoding and playing with AI so ram performance is very important since with ai every bit of performance i can squeeze out of it counts.

as it stands this windows VM seems to only be reaching 23-25% total possible system performance (the only others running are docker and jellyfin LXC containers while tests are being performed )

running with cpu type host flags +md-clear, -pcid, -spec-strl, -ssbd, +pdpe1gb, +hw-tlbflush, +hw-evmcs, +aes
 
thank you for the suggestion, i have that set in grub currently

current grub cmd:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt hugepagesz=1G mitigations=off intel_pstate=disable initcall_blacklist=sysfb_init pcie_port_pm=off pcie_aspm.policy=performance intremap=no_x2apic_optout idle=nomwait"
 
Windows 11 can be running as nested hyperv even if it's not enabled but because running VBS (virtual based security), you can check it within Windows with msinfo32.exe.

have you tried with Windows 10 ?
 
currently using windows 10 in the vm and the vbs is not enabled, thank you for that suggestion thats good to know for future reference
 
Just tested memory from linux and the host and LXC containers are getting 28GB/s and windows VMs are getting 1.6-4GB/s last test i have ran on windows every result was 1.6-2.8GB/s again sometimes it will spike to 3.6-4GB/s

Windows VMs seem to be getting less than 10% ram performance where as linux it seems is not effected.
 
Just tested memory from linux and the host and LXC containers
LXC isn't comparable to VM. LXC share host kernel.
We can compare results if you share CPU host model and your Windows benchmark tool.
 
Last edited:
My point in testing lxc was more so to double check host performance, just checking everything possible to verify that nothing else is sharing the problem anywhere. (I didn’t expect lxc to, but better to be sure)

for benchmarking the windows vm i used aida 64 & vovsoft ram benchmark, softwares that stresses ram seems very slow and glitchy though so it seems accurate for sure

Cpu is set to host which is a skylake i7-6700

P.s. windows seems to glitch and freeze when ram is stressed aswell sometimes even disconnecting the Remote Desktop session
 
Last edited:
Ah, i thought that was fixed in a recent release.

Passmark was giving roughly similar results, i disabled more mitigations such as page table isolation adding pti=off to grub and passmark is up to 9GB/s read/write the vm feels quite a bit better, would be nice to get it closer to 28gb/s

WinSAT reports 41-43GB/s but i doubt its almost doubling host performance so i think winsat isnt accurate in this case
 

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!