I'm trying to set up multiple Windows guests on a Linux server using KVM / qemu and I'm getting abysmal response on disk reads and writes. Windows 11 Task Manager on one guest is reporting disk average access times as high as 21000 msec (yes, 21 seconds) when all that's running is Thunderbird (reporting itself quiescent) and a virus scan. The disk image is a 3TB sparse img file, converted from qcow2 with qemu-img convert - I was seeing similar times with the earlier qcow2 filesystem and thought changing to img might speed things up. Based on ancient queries here I have changed the file cache to write-through, which actually seems to have made things worse.
On the host, qemu version is 8.2.0-11.e19_4.6 running on Alma Linux 9.4. Processor is a single Intel i7-12700KH with all cores enabled; host system has 128G memory, a 2TB SSD, and an 8TB hard drive. Virtual HDs are all on the 8TB HD which is formatted xfs. The specific Win11 guest instance I'm reporting here has been assigned 8 processor vcores with passthru, 32GB memory, and 3TB of virtual disk. There are also two Server 2022 guest instances (one AD DA, one member server with terminal services enabled) and a Windows 10 guest instance running, but all basically as quiescent as any Windows system can ever be said to be.
I figure if disk access was this bad for everyone, qemu would not still be out there so I must be doing something wrong. Suggestions as to where I could look would be very welcome.