[Samba] Samba 4 is half as fast as Samba 3?!

Oliver Lehmann lehmann at ans-netz.de
Wed Apr 16 18:03:37 MDT 2014


Hi,

I tried upgrading from my Samba 3 setup to Samba 4.1.6 - I do not need all
those AD-Features, I just need to mount the shares on two Windows 7 systems.
Nothing more or less - this is the only feature I need.

I use the same configuration that I used with Samba 3 (testparm says it
is fine).

The simple question is - why do I reach transfer rates of ~110MB/Sec with
Samba 3 and only ~45 MB/Sec with Samba 4? With such a mega-drop in
performance Samba 4 seems not to be an alternative for me? :( :(

I wonder what I could have done wrong? I'm running Samba 3 and 4 in
seperate FreeBSD 10 jails identically configured. The shared filesystem
is nullfs mounted into each jail. The Filesystem on the jails Host is a
ZFS raidz. Bonnie++ can write to it with ~150MB/Sec. I tried following
configure switches so far:
- with and without aio support
- with or without debug symbols in the compiled binaries (had it on by
   default)
- with or without pthreadpool
all made no difference so far.

During copying an 18GB file, the top output looks like:

Samba 4.1:
   PID USERNAME    THR PRI NICE   SIZE    RES STATE   C   TIME    WCPU COMMAND
16525 root          2  21    0   289M 17412K kqread  5   0:34 101.66% smbd

Samba 3.6:
   PID USERNAME    THR PRI NICE   SIZE    RES STATE   C   TIME    WCPU COMMAND
78738 root          1  91    0 60792K  5200K CPU6    6   0:51  64.16% smbd


My config is:

[code]
[global]
         workgroup = MYWORKGROUP
         server string = jasmin
         passdb backend = tdbsam:/usr/local/etc/samba/passdb.tdb
         log file = /var/log/samba4/log.%m
         max log size = 50
         unix extensions = No
         load printers = No
         dns proxy = No
         hosts allow = 10.0.1.51, 10.0.1.52, 10.0.1.53, 10.0.2.51

[usera]
         comment = usera
         path = /mnt/users/usera
         valid users = usera
         read only = No

[userb]
         comment = userb
         path = /mnt/users/userb
         valid users = userb
         read only = No
         wide links = Yes

[public]
         comment = public
         path = /mnt/users/public
         force user = userb
         read only = No
         wide links = Yes
[/code]

Samba 4.1.6 was configured with:

/usr/obj/ports/usr/ports/net/samba41/work/samba-4.1.6/buildtools/bin/waf
--prefix=/usr/local --exec-prefix=/usr/local --mandir=/usr/local/man
--sysconfdir=/usr/local/etc --includedir=/usr/local/include/samba4
--datadir=/usr/local/share/samba41 --libdir=/usr/local/lib
--with-pammodulesdir=/usr/local/lib
--with-privatelibdir=/usr/local/lib/samba
--with-modulesdir=/usr/local/lib/shared-modules
--with-pkgconfigdir=/usr/local/libdata/pkgconfig --localstatedir=/var
--with-piddir=/var/run/samba4 --with-sockets-dir=/var/run/samba4
--with-privileged-socket-dir=/var/run/samba4
--with-lockdir=/var/db/samba4 --with-statedir=/var/db/samba4
--with-cachedir=/var/db/samba4 --with-privatedir=/var/db/samba4/private
--with-logfilebase=/var/log/samba4 --with-pam --with-iconv
--with-winbind --without-gettext --with-sendfile-support
--builtin-libraries=smbclient --verbose --enable-debug
--without-acl-support --without-aio-support --disable-avahi
--disable-dnssd --disable-cups --disable-iprint --without-dnsupdate
--without-fam --with-pam_smbpass --enable-pthreadpool
--without-quotas --with-syslog --without-utmp --without-ads
--without-ldap --bundled-libraries=!talloc,!tevent,!tdb,!ldb,com_err
--jobs=8 configure


More information about the samba mailing list