Jeremy,
I re-built the samba43 port with aio_support unset and pthreadpool set.
smbd -b|grep aio
vfs_aio_fork_init
vfs_aio_pthread_init
from smb4.conf:
oplocks = yes
kernel oplocks = no
smb2 leases = yes
server min protocol = smb2
aio read size = 1024
aio write size = 1024
vfs objects = aio_pthread
The new build gives pretty much the same speeds as before using MS
diskspd under windows 7. Around 15MB/s for a random workload with 4k
blocks. Up to about 25MB/s with 64k blocks. For comparison I ran diskspd
on the windows 7 box using a windows 8 machine as the server. The
results were 49MB/s for 4k blocks and 1787MB/s for 64k blocks. Clearly
1787 MB/s is more than wire speed and reflects a cache effect that samba
doesn't access.
With the new build I do see smbd spawning extra threads under load. They
just don't seem to add any performance benefit.
This is a freebsd 10.2 system with samba running inside a jail.
Thanks again
Russ poyner