Highest performance non-passthrough VM storage approach?

i have a libvirt+qemu gaming VM with its OS on a very small NVMe SSD that is passed-through.
my host happens to also be my 32TiB RAID-5 NAS.
what is the highest performing way to give my VM access to my NAS array non-exclusively? i want everything else that uses my NAS to remain able to do so while my VM is.

ive tried using CIFS, but the performance is not where i need it. NFS doesn’t have the built-in windows compatibility i need.

Troubleshoot why your host or guest is having CIFS performance problems.

Are you using the virtio network adapter or an emulated adapter?

1 Like

i think my CIFS performance is so bad simply from the fact heavy CIFS traffic puts the host to 100% CPU usage.
im using the virtio network adapter.

Are you experiencing high usage from the smb daemon itself, or high iowait times from the kernel? there’s a lot of moving pieces in networked storage.

What do the atop or iotop tools show when you’re doing your performance tests? What sort of performance do you expect?

Shared high performance access to a file server from Windows, SMB is your best bet. It’s native to Windows, and fairly mature under Linux.

I am running Windows VMs on a Linux host, and don’t have any trouble hitting the speed wall of my disk array (only six spindles) from my Windows guest via the virtio driver. Sure the cpu load goes up, mainly from iowait, mechanical drives are just slow.