Unraid vs. Ubuntu SMB Performance

In my last round of testing I found that Unraid v6.8 SMB still underperforms compared to Windows Server 2019, but I was wondering if it is a Linux Samba problem, or an Unraid problem.

I installed an Ubuntu Server 18.04.3 LTS VM on Unraid, bridged network, 16GB RAM, 128GB raw disk located on the BTRS cache volume, consisting of 4 x Samsung Pro 860 SSD drives. This is exactly the same configuration I use for the W2K19 test VM. I installed Samba on Ubuntu using default options.

I created a SMB share that is backed by the VM disk image, and a second share that is mapped directly to an Unraid share located on the cache volume. For both shares the Ubuntu VM and Samba server will handle SMB network traffic, but one share will write to the Ubuntu EXT4 volume backed by the VM disk image, and the second will write through to the underlying Unraid BTRFS cache volume using VirtFS.

I ran a series of tests using my DiskSpeedTest utility, and the results are below.

UnraidUbuntuW2K19SMB
Unraid, Ubuntu, W2K19
UnraidUbuntuDirectSMB
Ubuntu, Mapped

Note that the VirtFS mapped share exhibit some problems that appear to be caching related. E.g. the file iteration test would create 14000 files, but iterating the just created files would only read 3080.

My conclusion is that the Linux Samba SMB performance is on par with that of Windows Server 2019, and that the performance problems are attributed to the Unraid file write performance. The Windows test used NTFS and Ubuntu used EXT4, so it could be BTRFS and XFS related, but more likely something Unraid does. Maybe the next step could be to test a bare metal Ubuntu SMB on XFS and BTRFS.