VMware Communities
Tanquen123
Enthusiast
Enthusiast

Workstation 15 Pro Performance - CPU and Hard Drive

I'm working with some Win Server 2019 VMs and an app that is, I think, hard drive I/O intensive. Most everything you do it's reading and writing multiple sets of data/files in an SQL database.

I've seen it run in some demos and it's a bit faster than when I run it. Is there anything that can be done to up the performance on the VMs?

In the demos they were running on Hyper-V on a contemporary Intel NUC, nothing fancy. I just finished a new build at the end of the year with a AMD 5950x, WD NS850 SSD and a RTX 3080. Whenever I upgrade I end up testing Workstation Unity mode and this is the first build were it's very usable. Still, the app in the VM is slow to respond.

Does Hyper-V have a performance edge on Workstation 15? I've given the VM 4 cores and 12GB of RAM and the VM files are on a data drive that is not booting the OS.

Labels (1)
0 Kudos
8 Replies
bluefirestorm
Champion
Champion

Does the AMD 5950X CPU support the INVPCID instruction? My impression is that AMD CPUs do not have the INVPCID instruction.
Perhaps you can verify this through HWinfo64 or through a bootable Linux USB in the /proc/cpuinfo
The INVPCID was introduced in Intel CPUs in the Haswell generation. It is used to INValidate TLB entries belonging to a specific Process Context IDentifier in the TLB and thus avoiding clearing the entire cache which will have entries belonging to other PCIDs.
The absence of the INVPCID could severely affect performance in I/O intensive workloads (not just VMs, but probably VMs get hit with a double whammy) as the TLB cache will be flushed when an application needs to switch context to I/O operation.

0 Kudos
Tanquen123
Enthusiast
Enthusiast

I have no clue, Google is unclear. There is some info about AMD adding it to RDP or something for Epyc CPUs or something. ???

There is also some info about Intel CPUs taking a hit with there security patches. I don't know.

Just wondering if there was a setting or setup that would improve performance and or if Hyper-V may work a little better?

0 Kudos
bluefirestorm
Champion
Champion

The hit from the patches to the Meltdown bug is mitigated by the PCID/INVPCID in Intel CPUs which AMD CPUs do not have.

Do you have Hyper-V enabled on the Windows host (presumably it is Windows as you mentioned Unity mode)? With Workstation 15.5.5 and higher, a user level monitor (ULM) using the Microsoft Hypervisor API is used instead of the ring 0 VMM. The ULM would be slower in performance. You can verify this in the vmware.log

vmx| I005: Monitor Mode: CPL0

If you see ULM the slower VMM is used while CPL0 is the regular ring 0 VMM.

You could disable Hyper-V by following this KB.
https://kb.vmware.com/s/article/2146361

 

0 Kudos
Tanquen123
Enthusiast
Enthusiast

I am running Workstation 15.5.7 but have not yet used Hyper-V and it is not selected in the Windows features.

I wonder why 15.5.5 and higher would use it if slower.

I do not see ULM in the log but there is CPL0 in reference to the monitor mode.

0 Kudos
bluefirestorm
Champion
Champion

The slower ULM is to allow coexistence of Hyper-V and VMware Workstation in the same Windows host.

https://blogs.vmware.com/workstation/2020/05/vmware-workstation-now-supports-hyper-v-mode.html

Since it appears that the root VMM is used (CPL0 in the vmware.log), the absence of the PCID/INVPCID features in the AMD CPU is likely the reason why it is slow in the I/O intensive VMs. Note I/O here pertains to both network and disk I/O.

It isn't a fair statement to say that Hyper-V is better than VMware Workstation in this specific scenario unless you use the same hardware to make that comparison.

0 Kudos
Tanquen123
Enthusiast
Enthusiast

"PCID/INVPCID features in the AMD CPU is likely the reason why it is slow"

Maybe, I have nothing to compare it to.

 

"It isn't a fair statement to say that Hyper-V is better than VMware Workstation"

Just wondering if I'd see a difference, I've seen some info on-line that suggest I may but I'd don't know and yes, I'd using the same hardware.

My old Intel workstation is almost 10 years old so I'd hope it's slower and I'd hope if the AMD 5000 CPUs are (a lot, a little) slower at VMs there would be more chatter.

0 Kudos
bluefirestorm
Champion
Champion

A 10 year old Intel CPU won't have the INVPCID instruction (Haswell was introduced in 2013). It might have the PCID feature in the cache (PCID was introduced in Westmere 2010). But it is again not a fair comparison. Older Intel CPUs have consume much more clock cycles during VM transitions.

You could try enabling Hyper-V and create a VM that runs under Hyper-V and run the same VM workload to make a fair comparison between Hyper-V and Workstation Pro 15.5.7 running on the same hardware setup using AMD 5950X. But I suspect you are unlikely to see any major improvement if indeed the PCID/INVPCID absence is the cause of the slow SQL VM in Workstation Pro.

0 Kudos
Tanquen123
Enthusiast
Enthusiast

Well this sounds interesting. Did they ever fix it and how do you change existing VMs to use IDE or SCSI or NVMe?

https://communities.vmware.com/t5/VMware-Workstation-Pro/NVMe-disk-vmdk-Slower-than-iSCSI-Where-is-t...

0 Kudos