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%2014-22-02.png
>
> 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-cachemodes.html

Thanks, I'll give it a try and report back here.

Richard