Unraid NVMe (Cache) vs unassigned passthrough for VM

Soldato
Joined
20 Jun 2011
Posts
3,675
Location
Livingston
Hi guys,

I'm in the final stages of putting together my Unraid build. I would like to run a single Windows 10 VM either using a vdisk on my cache pool (Samsung 970 Pro) or pass through of an entire physical drive.

I haven't planned to do much (if any) gaming on the VM, workstation mainly Adobe CC is the aim with performance in mind.

I'm wondering if I run the VM using a vdisk on the cache, what sort of performance can I expect compared to passing through a dedicated SSD?

Will other docker containers running simultaneously on the cache negatively impact the read/write performance of the VM?

Hope this makes sense. I have done a fair bit of searching but the posts and replies are either quite old or not relevant to NVMe.

Essentially what I want to know is will the NVMe cache be sufficient and/or faster than a dedicated SSD.

Cheers in advance
 
Soldato
Joined
29 Dec 2002
Posts
7,234
As you likely appreciate, without knowing the IO load of the ‘other’ dockers (big difference between a NZBGet instance doing multiple RAR/PAR operations simultaneously with a fast connection and a netstat docker that’s effectively idle), the type of NVMe drive and the IO load from your workstation VM, we can’t answer that. You would be much better off actually trying it with your specific usage. It’s unlikely that you’ll bottleneck on an NVMe drive, though it’s possible.
 
Last edited:
Caporegime
Joined
18 Oct 2002
Posts
26,080
I presume you have a level of resiliency with a storage pool that doesn't exist if you pass through a single physical drive
 
Soldato
Joined
29 Dec 2002
Posts
7,234
I presume you have a level of resiliency with a storage pool that doesn't exist if you pass through a single physical drive

The storage pool is fault tolerant, but with it generally being mechanical drives, it’s slower, even more so due to how direct writes are handled to storage in UnRaid as parity needs to be calculated and written. A cache drive (if used) mitigates this issue as writes to it are without parity and small SSD’s are often used, the cache drive isn’t fault tolerant as a single drive, you can solve this with a cache pool (think R1 but with btrfs and you can increase capacity and redundancy depending on your priority). An NVMe cache drive is many times quicker than an AHCI drive, so in theory you could run say 5 or so VM’s with the same maximum IO load as giving them dedicated AHCI drives and be no worse off, but that’s just based on headline R/W numbers and allowing for overheads. Direct pass through has its advantages though, for example virtual interfaces under ESXi work really well in pfsense, no performance issues, the same isn’t always true in UnRaid.
 
Back
Top Bottom