I just setup a Windows 10 to do some debugging of a mingw project. Gnome Boxes made the process very simple but the performance is horrendous.
Even after the following I still wouldn't consider it usable.
# chattr +C ~/.local/share/gnome-boxes/images # cd ~/.local/share/gnome-boxes/images # mv win10 ../ # cat ../win10 win10
$ lsattr ---------------C---- ./win10
Here's a screenshot showing windows process manager with < 1MB transfer rates but 100% disk busy while installing MinGW w64 in windows, which is not a huge amount of data...
https://www.dropbox.com/s/2m0p3lptbqwd7lp/Screenshot%20from%202021-04-03%201...
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just for virtual machine images?
Thanks, Richard
On Sat, 3 Apr 2021 14:32:03 -0500 Richard Shaw wrote:
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just for virtual machine images?
Did you install the virtual disk and network drivers from redhat inside the Windows machine? If not, you are doing everything with dead slow emulation. I get fairly decent performance with my windows VM, but only by using the redhat drivers.
On Sat, 2021-04-03 at 15:40 -0400, Tom Horsley wrote:
On Sat, 3 Apr 2021 14:32:03 -0500 Richard Shaw wrote:
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just for virtual machine images?
Did you install the virtual disk and network drivers from redhat inside the Windows machine? If not, you are doing everything with dead slow emulation. I get fairly decent performance with my windows VM, but only by using the redhat drivers.
Exactly. This makes a big difference. Using an SSD will also be a winner of course. I do both and performance is good (enough to run AAA games on my Win10 VM using VFIO passthrough of an Nvidia GPU.)
This is all done with libvirt. I don't use Gnome Boxes so YMMV.
poc
On Sat, Apr 3, 2021 at 2:41 PM Tom Horsley horsley1953@gmail.com wrote:
On Sat, 3 Apr 2021 14:32:03 -0500 Richard Shaw wrote:
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just
for
virtual machine images?
Did you install the virtual disk and network drivers from redhat inside the Windows machine? If not, you are doing everything with dead slow emulation. I get fairly decent performance with my windows VM, but only by using the redhat drivers.
Thanks, that helped a lot. Not quite as responsive as VirtualBox but a lot better.
Thanks, Richard
On Sat, Apr 3, 2021 at 1:32 PM Richard Shaw hobbes1069@gmail.com wrote:
I just setup a Windows 10 to do some debugging of a mingw project. Gnome Boxes made the process very simple but the performance is horrendous.
Even after the following I still wouldn't consider it usable.
# chattr +C ~/.local/share/gnome-boxes/images # cd ~/.local/share/gnome-boxes/images # mv win10 ../ # cat ../win10 win10
$ lsattr ---------------C---- ./win10
Here's a screenshot showing windows process manager with < 1MB transfer rates but 100% disk busy while installing MinGW w64 in windows, which is not a huge amount of data...
https://www.dropbox.com/s/2m0p3lptbqwd7lp/Screenshot%20from%202021-04-03%201...
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just for virtual machine images?
Pretty sure GNOME Boxes creates sparse qcow2 files, and virt-manager creates them with option preallocation=falloc, so this is worth a shot. I'm not sure it can account for all of the performance loss though.
Check the configuration 'virsh dumpxml $vmname > vmname.xml' and see if it's using IDE or SATA for the drive. It is possible to use VirtIO for Windows after you've installed the VirtIO drivers for Windows and the performance is much better.
I'm reluctant to outright recommend what I use, cache mode unsafe, but it performs a *lot* better. But if the host crashes, the VM image can be damaged beyond repair. If the guest crashes, it should be OK. (I force quit VMs all the time, mainly because I am trying to damage file systems.)
I think the default cache mode for GNOME Boxes is none. It is possible to change it via virsh to writeback and see if that's better or worse. And if it's better then that maybe could become the default for Windows guests. I don't expect unsafe could ever be a default. https://documentation.suse.com/sles/11-SP4/html/SLES-kvm4zseries/cha-qemu-ca...
On Sun, Apr 4, 2021 at 12:53 AM Chris Murphy lists@colorremedies.com wrote:
On Sat, Apr 3, 2021 at 1:32 PM Richard Shaw hobbes1069@gmail.com wrote:
I just setup a Windows 10 to do some debugging of a mingw project. Gnome
Boxes made the process very simple but the performance is horrendous.
Even after the following I still wouldn't consider it usable.
# chattr +C ~/.local/share/gnome-boxes/images # cd ~/.local/share/gnome-boxes/images # mv win10 ../ # cat ../win10 win10
$ lsattr ---------------C---- ./win10
Here's a screenshot showing windows process manager with < 1MB transfer
rates but 100% disk busy while installing MinGW w64 in windows, which is not a huge amount of data...
https://www.dropbox.com/s/2m0p3lptbqwd7lp/Screenshot%20from%202021-04-03%201...
Any tips? Or do I just need to buy a cheap SSD and format it EXT4 just
for virtual machine images?
Pretty sure GNOME Boxes creates sparse qcow2 files, and virt-manager creates them with option preallocation=falloc, so this is worth a shot. I'm not sure it can account for all of the performance loss though.
The virtio drivers helped quite a bit, at least enough to be "acceptable" for my current use case, although the program is exiting without a stack trace, but that's another thread all together.
Check the configuration 'virsh dumpxml $vmname > vmname.xml' and see if it's using IDE or SATA for the drive. It is possible to use VirtIO for Windows after you've installed the VirtIO drivers for Windows and the performance is much better.
$ virsh dumpxml win10 | grep -i sata <target dev='hdc' bus='sata'/> <controller type='sata' index='0'>
I'm reluctant to outright recommend what I use, cache mode unsafe, but it performs a *lot* better. But if the host crashes, the VM image can be damaged beyond repair. If the guest crashes, it should be OK. (I force quit VMs all the time, mainly because I am trying to damage file systems.)
I can always create a poor man's snapshot and create a xz archive of the image. It's mostly throw away except all the windows updates even using the latest Win10 ISO.
I think the default cache mode for GNOME Boxes is none. It is possible
to change it via virsh to writeback and see if that's better or worse. And if it's better then that maybe could become the default for Windows guests. I don't expect unsafe could ever be a default.
https://documentation.suse.com/sles/11-SP4/html/SLES-kvm4zseries/cha-qemu-ca...
Thanks, I'll give it a try and report back here.
Richard
Looks like it's already the default...
$ virsh dumpxml win10 | grep -i cache <driver name='qemu' type='qcow2' cache='writeback'/>
Thanks, Richard