VMPlayer is very frustrating because whenever any other process on the host increases the CPU load, VMPlayer (vmware-vmx.exe) immediately spikes to match it. It is like a jealous child jumping up and down screaming look at me, look at me!
Here’s some observations:
This is very annoying because it renders VMPlayer useless in many cases since the host system can no longer be used for any tasks that put a load on the CPU because then VMPlayer’s load jumps to match which reduces the host’s CPU to half—for no reason.
This is a pretty critical bug that needs to be fixed.
The problem seems to be a defect in the vmx86.sys driver. You can see this in the Task Manager when the show-kernel-times option is checked because VMPlayer spikes the red line. If you then use Process Explorer or something to view vmxware-vmx.exe’s stack, you’ll see the driver in the call-stack, and if you suspend that thread, the red-line in Task Manager drops back to normal and the CPU cycles go to the other CPU-intensive process.
Using Process Explorer to suspend one of VMPlayer’s threads just so that it doesn’t hog (waste!) CPU cycles for nothing is really annoying and obviously no good since the VM gets frozen until you un-pause the thread.
This bug definitely needs to be fixed (or even acknowledged).
From the host's perspective, all time spent in the virtual machine monitor and the guest is spent in vmx86.sys.
Can you provide more details on how to reproduce this behavior?
Please upload the vmware.log file for the guest (as an attachment).
To reproduce, just run a VM (I run XP), then run a process on the host that uses a lot of CPU (like a game or something). The VM’s process will spike in CPU load to match that of the other process. If you then end the other process, the VM’s process will drop back down to normal. Repeat as necessary until link proven.