If you’re running macOS with QEMU, you’ll notice that the UI might be slow. This is because, by default, QEMU will use a basic display adapter with low display memory (VRAM).
There’s two ways to fix this problem:
- Pass-through your GPU with
vfio
- Use another display adapter, such as VMsvga2
This post will focus on VMsvga2, which is a macOS kext that enables you to use the vmvga
video model with libvirt.
Unfortunately VMsvga2 is an old project that is no longer maintained, same goes for the vmvga QEMU driver. Currently there’s no QXL driver available for macOS so this is the only choice we have.
Simply replace your existing video XML with this:
<video>
<model type='vmvga' vram='16384' heads='1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
</video>
You can increase the vram
to the amount you desire.
If you are using the Clover bootloader, you might have to add wmv_option_fb=0x06
to the arguments section in your config.plist
You will also need to make sure you have the VMsvga2 kext installed on your system.
Once you reboot, you’ll notice a more responsive UI.