utmapp / utmapp/UTM

Improve speed for x86 Windows guest by enabling Hyper-V Enlightenments by default

Open
#4,914 5 comments 2 reactions 0 assignees View on GitHub
enhancement
Dominant language
Swift
Stars
35.5k
Forks
1.8k
Avg merge
5d 5h
Merged PRs (30d)
7

Description

Currently, with the default settings for Windows guests on x86 hardware, the guests are very sluggish. To improve speed and the overall responsiveness, the following settings should be applied by default.

1. Disable **HPET** support `-no-hpet`[1]
2. Set the following **Hyper-V Enlightenments** [2] by default: `hv-relaxed,hv-vapic,hv_spinlocks=0x1fff,hv-runtime,hv-time,hv-frequencies,hv-xmm-input`

This increases speed (~20 % in single core & ~11 % in multicore) [3] and responsiveness of the VM dramatically. I tested this with Geekbench 5 (Windows 11 guest):

[Bare Metal](https://browser.geekbench.com/v5/cpu/19750858): 1241/4766
[Default settings](https://browser.geekbench.com/v5/cpu/19751026): 848/3022
[With Hyper-V Enlightenments](https://browser.geekbench.com/v5/cpu/19750790): 1017/3375

[1] [i386 target only](https://www.qemu.org/docs/master/system/invocation.html?highlight=-no-hpet#hxtool-4)
[2] [Hyper-V Enlightenments](https://www.qemu.org/docs/master/system/i386/hyperv.html#hyper-v-enlightenments)
[3] [Comparison between default settings and Hyper-V Enlightenments](https://browser.geekbench.com/v5/cpu/compare/19750790?baseline=19751026)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.