Jump to content

Slow performance of small files over SMB


Recommended Posts

Posted

I've suspected this for quite a while, so I conducted a small test.

I took a folder with ~95K files, ~24GB and copied to and from my Unraid server and to and from an old NAS I have.

 

The Unraid server has AMD Ryzen 5 5600G, 16GB RAM. I also have an NVME cache drive.

The old NAS has Atom D525, 4GB RAM, and 5 3TB drives, running latest OpenMediaVault.

All machines are connected to the same switch, 1GB ethernet.

The source machine is an Intel I7 6700T with a SATA SSD.

 

I copied the files to the NAS, to the Unraid server using the standard shares, where the files will be stored on the cache drive, and to the Unraid server to a direct share to cache drive.

 

The copy operation was performed with Robocopy using 4 threads.

 

Times:

Local -> Unraid user share: 23m

Local -> Old NAS: 19m

Local -> Unraid direct share: 6m

 

Unraid user share -> Local: 10m

Old NAS -> Local: 8m

Unraid direct share -> Local: 6m

 

This explains why I get so low performance running applications that store data directly on the network shares.

I know that Unraid adds latency to network operations because of shfs, and I don't expect write operations to be as fast as RAID-5, and that's why I added the NVME drive, but I didn't expect this.

 

Is there any way to reduce the latency (that does not include direct mounting, as that defeats the purpose) ?

Posted

You can use exclusive shares, for data that resides only on a pool, for the array, the best hope is when Unraid starts using kernel 6.9+, it includes FUSE pass through that is supposed to help a lot with this.

Posted

So that means I can't use the cache NVME and the entire data for the share must occupy a single drive of my array?

So I get slow write performance AND I have to manage my data, which I thought I could skip on Unraid?

 

Posted
9 minutes ago, maoravni said:

So that means I can't use the cache NVME and the entire data for the share must occupy a single drive of my array?

Exclusive shares only work with pools, you can also use disk shares (for single array disk and/or pools), or user shares with slower performance, at least for now.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...