Windows 10 VM idle CPU usage ~25%


Recommended Posts

So I've been creeping everything I can find about KVM/QEMU/etc to try and figure this out.  I have a consistent ~25% idle usage right now on the unRaid dashboard on a single core (of 6 passed through) and between 5-10% on the other 5.  According to various posts around here, reddit, proxmox, etc., its caused by a windows interrupt issue.  Tried everything I can find and spun up a bunch of VMs to get it diagnosed. 

Finally was successful with spinning up a VM with Hyper-V enhancements OFF, HPET='yes', Q35, OVMF, updated to 1809.  Idle usage sitting at 1-3% on a single core and the rest barely tickling.  And it stayed like that for 8 days.  Then it went back to ~25%.  Nothing changed near as I can tell: it just idled up.

So I fired up a new Windows 10 image to test using an Arch template.  HPET='yes'.  Updated to 1809.  Idles right down at ~3% within a minute of boot.  

This does not affect any of my other VMs (Manjaro, Ubuntu, Windows7).  Only one VM is on at any given time. 

Anyone have any idea what is going on?

 

Specs:

unRAID 6.7

Ryzen 2700.  Cores 4-7 w/HT isolated for VMs

32GB RAM - 8GB for Win10 VM

ASUS B450-F Gaming

GTX 950 for passthrough

VM gets 3 isolated cores with respective hyper-threads  

Link to comment

@toastman W10 is doin a lot of stuff in the backround out of the box. For example there is a update option which is set as default to provide microsoft updates for other PCs in your network and even to deliver it via p2p to other windows 10 machines via the internet. 

 

https://support.microsoft.com/en-us/help/4040215/window-10-delivery-optimization

 

Turn this piece of crap of or try to disable your nic in the VM for a while and check if this reduces the load. 

Link to comment
  • 10 months later...
On 6/4/2019 at 2:35 AM, toastman said:

I went through the device manager and disabled all of the unused USB root hubs based on an obscure post I found elsewhere.  CPU usage dropped to normal idle levels.

 

Odd

I have the same issue.

How do you know which USB root hubs are in use?

 

Does your solution still work?

Link to comment
On 4/11/2020 at 8:01 AM, theone said:

I have the same issue.

How do you know which USB root hubs are in use?

 

Does your solution still work?

If it doesn't let me delete it, I know its in active use.  I have a passthrough USB card, so I don't delete that otherwise I'd lose my KB/mouse.  Interestingly, I delete them rather than disable them, and some come back on a restart, but not all of them

 

I'm not sure if it makes a difference anymore but its still part of my setup process:

 

XML edits:

1.  Enable HPET

2. Enable multifunction='on' for the GPU and GPU Audio and set the bus appropriately

3. KVM=hidden

4. Disable the hypervisor CPU flag

 

VM itself:

1. Let windows install the GPU drivers.  I don't game much on the VM so I've never seen a need for the newest

2. Delete unused USB root hubs.  

3. Update all virtio drivers

4. Ensure 'exclusive mode' is enabled for audio

 

That is part of my regular setup process.  I can't tell anymore which makes the biggest difference but I had awful audio latency and CPU idle (15-25%) until I did at least the HPET and deleted the USB root hubs.  

Link to comment
21 hours ago, toastman said:

...

That is part of my regular setup process.  I can't tell anymore which makes the biggest difference but I had awful audio latency and CPU idle (15-25%) until I did at least the HPET and deleted the USB root hubs.  

Thank you,

 

HPET and USB root hubs (I disabled the controllers in VM Device Manager) did the trick.

Now idle CPU usage on unRAID sever for the windows VM is ~2-3%

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.