Bug 1644693
Summary: | High Host CPU load for Windows 10 Guests (Update 1803) when idle | ||
---|---|---|---|
Product: | [oVirt] ovirt-engine | Reporter: | Michal Skrivanek <michal.skrivanek> |
Component: | General | Assignee: | Steven Rosenberg <srosenbe> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Liran Rotenberg <lrotenbe> |
Severity: | medium | Docs Contact: | Rolfe Dlugy-Hegwer <rdlugyhe> |
Priority: | urgent | ||
Version: | future | CC: | ailan, bugs, chayang, claytonn, darinschmidt, dholler, jinzhao, jspanko, juzhang, knoel, lijin, linux, lspiehler, mailinglists35, mark.dinicola, mavital, michal.skrivanek, michen, mkalinin, mstevens, mtessun, nerijus, pbonzini, pgozart, rbarry, rdlugyhe, ribarry, sbonazzo, siliu, srosenbe, tburke, virt-bugs, virt-maint, vkuznets, vrozenfe, xfu, xiagao, yfu, zhguo |
Target Milestone: | ovirt-4.3.0 | Keywords: | FutureFeature |
Target Release: | --- | Flags: | michal.skrivanek:
ovirt-4.3?
lrotenbe: testing_plan_complete+ rule-engine: planning_ack? rule-engine: devel_ack+ lrotenbe: testing_ack+ |
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | vdsm-4.30.5, ovirt-engine-4.3.0_rc | Doc Type: | Enhancement |
Doc Text: |
Previously, for virtual machines with a Windows 10 guest, the host CPU load was too high.
The current release reduces the CPU load by adding enlightenments that enable the hypervisor synthetic interrupt controller (SynIC) and stimer.
For example, with this enhancement, the host CPU load of a virtual machine running an idle Windows 10 guest should be approximately 0-5%.
|
Story Points: | --- |
Clone Of: | 1610461 | Environment: | |
Last Closed: | 2019-02-13 07:43:29 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | Virt | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1610461, 1631439 | ||
Bug Blocks: | 1624786, 1638835, 1690641 |
Description
Michal Skrivanek
2018-10-31 12:30:20 UTC
(In reply to Michal Skrivanek from comment #0) > [see the original bug for more details] > > cloning to oVirt, we may need to use the two backported enlightenments, > probably add a separate enum to existing > "os.windows_xp.devices.hyperv.enabled.value = true" key. We need a different > set (those 2 new flags) for Windows 10 or we can probably send it to older > windows too (needs to be tested) This is my understanding too: all Windows versions should benefit from these enlightenments, we're not aware of any possible regressions ATM. this requires qemu-kvm-rhev-2.12.0-18.el7_6.2 and kernel newer than 3.10.0-957.1.3.el7. Not yet released *** Bug 1655039 has been marked as a duplicate of this bug. *** *** Bug 1655340 has been marked as a duplicate of this bug. *** WA is to use non-Windows OS type for now, or 4.2 cluster level Verified on: ovirt-engine-4.3.0-0.8.master.20190120162615.git5926f20.el7.noarch vdsm-4.30.6-17.gitcfd81b7.el7.x86_64 qemu-kvm-rhev-2.12.0-18.el7_6.2.x86_64 libvirt-daemon-kvm-4.5.0-10.el7_6.3.x86_64 qemu-kvm-tools-rhev-2.12.0-18.el7_6.2.x86_64 qemu-kvm-common-rhev-2.12.0-18.el7_6.2.x86_64 qemu-kvm-rhev-debuginfo-2.12.0-18.el7_6.2.x86_64 kernel-3.10.0-970.el7.x86_64 Steps: 1. Create a windows 10 VM, with update 1803, OS Type set to: Other OS. 2. Run the VM. 3. Check that the VM started without hyperv (virsh -r dumpxml <vm>) See it without: <features> <acpi/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <synic state='on'/> <stimer state='on'/> </hyperv> </features> 4. Run on the host: # top -p <vm_pid> -n 1800 -d 2 -b > unfixed-top-pc-result 5. Stop the VM. 6. Change the OS Type to Windows 10 64b. 7. Run the VM. 8. Check that the VM started with hyperv (virsh -r dumpxml <vm>) See it has: <features> <acpi/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <synic state='on'/> <stimer state='on'/> </hyperv> </features> 9. Run on the host: # top -p <vm_pid> -n 1800 -d 2 -b > fixed-top-pc-result 10. Run on both outputs( unfixed-top-pc-result, fixed-top-pc-result) # cat <output> |grep qemu-kvm|awk -F ' ' '{print $9;}'|awk '{sum+=$1} END {print "Average = ", sum/NR}' 11. Check the difference from step 10. Results: From unfixed-top-pc-result, the output of the command in step 11: Average = 46.3238 From fixed-top-pc-result, the output of the command in step 11: Average = 11.3415 *** Bug 1669102 has been marked as a duplicate of this bug. *** Hi Steve, Would you review the updated content in the Doc Text field? Thanks, Rolfe Dear Rolfe, The doc text you added does basically fit the description of this issue. With Best Regards. Steven Rosenberg. This bugzilla is included in oVirt 4.3.0 release, published on February 4th 2019. Since the problem described in this bug report should be resolved in oVirt 4.3.0 release, it has been closed with a resolution of CURRENT RELEASE. If the solution does not work for you, please open a new bug report. |