Man Linux: Main Page and Category List


       dbench - Measure disk throughput for simulated netbench run


       dbench [options]numclients
       tbench [options]numclientsserver tbench_srv [options]


       This  manual  page  documents briefly the dbench and tbench benchmarks.
       This manual page was written  for  the  Debian  GNU/Linux  distribution
       because  the original program does not have a manual page.  However, it
       has fairly easy to read source code.

       Netbench is a terrible benchmark, but it’s an "industry  standard"  and
       it’s  what  is used in the press to rate windows fileservers like Samba
       and WindowsNT.
       Given the requirements of running netbench (60 and 150 Windows PCs  all
       on  switched  fast ethernet and a really grunty server, and some way to
       nurse all those machines along so they will run a very fussy  benchmark
       suite  without  crashing),  these  programs  were  written  to  open up
       netbench to the masses.
       Both dbench and tbench read a load description file  called  client.txt
       that  was  derived  from a network sniffer dump of a real netbench run.
       client.txt is about 4MB and describes the 90 thousand operations that a
       netbench  client  does in a typical netbench run. They parse client.txt
       and use it to produce the same load without having to buy a huge lab.
       dbench produces only the filesystem load. It does all the same IO calls
       that  the  smbd  server  in  Samba would produce when confronted with a
       netbench run. It does no networking calls.
       tbench produces only the TCP and process load. It does the same  socket
       calls  that  smbd would do under a netbench load. It does no filesystem
       calls. The idea behind tbench is to eliminate smbd  from  the  netbench
       test, as though the smbd code could be made infinately fast.


       The  dbench  program  takes  a  number,  which  indicates the number of
       clients to run simultaneously.  It can also take the following options:

       -c client.txt
              Use  this  as  the  full  path  name of the client.txt file (the
              default is /usr/share/dbench/client.txt).

       -s     Use synchronous file IO on all file operations.

       -t TIME
              set the runtime of the benchmark in seconds (default 600)

       -D DIR set the base directory to run the filesystem operations in

       -x     enable xattr support, simulating  the  xattr  operations  Samba4
              would need to perform to run the load

       -S     Use  synchronous IO for all directory operations (unlink, rmdir,
              mkdir and rename).
              The tbench program takes a number, which indicates the number of
              clients  to  run  simultaneously,  and a server name: tbench_srv
              should be invoked on that server before invoking tbench.  tbench
              can also take the following options:

       -T option[,...]
              This  sets  the socket options for the connection to the server.
              The options are a comma-separated list of one  or  more  of  the
              SO_LOWDELAY, SO_THROUGHPUT, SO_SNDBUF=number,  SO_RCVBUF=number,
              SO_SNDLOWAT=number,  SO_RCVLOWAT=number,  SO_SNDTIMEO=number,and
              SO_RCVTIMEO=number.   See  socket(7)  for  details  about  these
              The  tbench_srv  can  only  take one option: -T option[,...]  as
              documented above.


       /usr/share/doc/dbench/README contains the  original  README  by  Andrew
       Tridgell which accompanies the dbench source.


       This   manual   page   was   originally   written   by   Paul   Russell
       <>, for the Debian  GNU/Linux  system  (but
       may  be  used  by  others).  Modified  and updated by Mattias Nordstrom

                                 June 18, 2005