I maintain Samba servers for a broad mix of computer clients and, while I agree that Samba on the macOS side isn’t as easy as it can be on other OSes, it is possible to get highly performant access to that data.
In my smb.conf file, as part of the [Global] section, I include some tweaks alleged to make macOS performance better:
fruit:aapl = yes
fruit:model = MacSamba
vfs objects = catia fruit streams_xattr
fruit:nfs_aces = no
fruit:zero_file_id = yes
fruit:metadata = stream
fruit:encoding = native
And, in the definitions for each share I also include:
veto files = /._*/.DS_Store/
delete veto files = yes
(This are more for my sanity than anything else…)
I can confirm that none of these changes negatively impacted performance on Windows and Linux clients. And, I can likewise confirm that these changes did improve my SMB access from 40MB/s to closer to 65MB/s.
Recently though I made a change to my primary Mac workstation that has me rethinking my testing. All of my testing had been done via a wired connection to my M1 Pro Macbook Pro via a CalDigit ‘USB-C Pro’ dock (which is actually a Thunderbolt 3 dock, and connected to my Mac via Thunderbolt). This is the machine I saw the 33% speed bump.
I have, for unrelated reasons, upgraded my home network to 2.5Gb and bought a cheap USB-C 2.5Gb adapter, which I’ve since connected to the dock and have stopped using the network jack built into the dock.
I expected this not to impact Samba share performance, and made no attempt to even test, but in my normal activities I was transferring some files from the Samba server (Debian 12 with a ZFS ‘RAID10’ of striped mirrors) and saw reliable performance around 110Mb/s. Essentially, saturating the gigabit connection from the server.
I may find the time to do some further testing - I’m curious to know if this network adapter would perform this well when connected at gigabit speed too. I’m also wondering if my speed limits were more a function of the dock, and if I’d see similar performance with other USB connected NICs.
Just my two cents…