January 24, 20251 yr I realise I am not the first person to post on this topic, though I've done quite a bit of work to narrow down where my issue is, and found an almost complete solution, so perhaps this will be helpful to others. ----------------------------------------------------------------- I recently upgraded to 10G networking between Unraid and my PC. Unraid is running on Proxmox ( Ryzen 5900X 128GB Ram ) as a 12 Core - 32GB VM. Direct pass through of 2x1TB Western Digital NVME and HBA for drives. Cache on NVME drives is a zpool mirror. VirtIO networking. PC to Unraid - iperf3 - 9.4Gb/s all day every day. Tick, network is working fine. Jumbo frames and I will get to 9.8Gb/s. This is testing from a WSL instance on PC to Unraid VM. Given virtualisation at both ends I am very happy with this and does a good job of validating everything is running nicely. Unraid onto cache NVMe drives tested with fio gives 200-2000 MB/s performance, average 1200 MB/s. Perhaps a bit lower than native drives but that's fine. This is also using fuse so excludes that as a cause I would think. Saving files to a cache share using Samba and it'll max out at about 480MB/s, which on the face of the the other tests I would hope to get closer to full wire speed. It's very stable at 480MB/s. smbd seems to top out at 70% of one core, so as single thread on that basis I perhaps could expect 700MB/s or so at max anyway. I was going to end my post with the following lines Quote Nearly 500MB/s is not the end of the worlds by any means, but before I stop all the changes, my question is, am I done? Given samba is single threaded is that it? Is there any secret tuning I could/should be doing to improve samba throughput? Is everyone else seeing a similar ceiling? but then I had one final idea. I checked the CPU governor mode on Proxmox, I vaguely remembered setting it to powersave. I changed this back to performance using echo "performance" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor If you aren't running in a VM you can now set this in the settings page in version 7. This instantly increased throughput to 800MB/s ! The ondemand governor also performs similarly, and that's what I'm going to leave it on, don't need to be running at full speed when there is nothing to do. At that point I'm reasonably happy, unless anyone has any ideas for the last 200MB or so. Edited January 24, 20251 yr by dsmith44
January 24, 20251 yr Community Expert CPU has a lot of effect on SMB transfers, since they are single threaded, I remember that just upgrading my desktop from a 6th to a 13th gen CPU, increased my transfer speed with 25GbE to/from Unraid to around 2.3GB/s, before they maxed out at around 1.2GB/s, storage devices remained the same.
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.