[Samba] Am I getting the best performance?

aragonx aragonx at dcsnow.com
Fri Mar 14 02:59:18 GMT 2003


Okay, I've been chasing performance for a while now.  I have no idea if I 
should be trying to get better performance or if I'm getting all I can out 
of my hardware.  Here is the information:

/sbin/hdparm -I /dev/hdd

/dev/hdd:

ATA device, with non-removable media
        Model Number:       ST328040A
        Serial Number:      7BY034XB
        Firmware Revision:  3.07
Standards:
        Supported: 4 3 2 1
        Likely used: 5
Configuration:
        Logical         max     current
        cylinders       16383   16383
        heads           16      16
        sectors/track   63      63
        --
        CHS current addressable sectors:   16514064
        LBA    user addressable sectors:   55704096
        device size with M = 1024*1024:       27199 MBytes
Capabilities:
        LBA, IORDY(can be disabled)
        Buffer size: 512.0kB    Queue depth: 1
        Standby timer values: spec'd by Standard
        R/W multiple sector transfer: Max = 16  Current = 16
        DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 *udma4
             Cycle time: min=120ns recommended=120ns
        PIO: pio0 pio1 pio2 pio3 pio4
             Cycle time: no flow control=240ns  IORDY flow control=120ns
Commands/features:
        Enabled Supported:
           *    READ BUFFER cmd
           *    WRITE BUFFER cmd
           *    Look-ahead
           *    Write cache
           *    Power Management feature set
           *    SMART feature set
           *    DOWNLOAD MICROCODE cmd
HW reset results:
        CBLID- above Vih
        Device num = 1


/sbin/hdparm -Tt /dev/hdd

/dev/hdd:
 Timing buffer-cache reads:   128 MB in  0.95 seconds =134.74 MB/sec
 Timing buffered disk reads:  64 MB in  2.43 seconds = 26.34 MB/sec

/sbin/hdparm /dev/hdd

/dev/hdd:
 multcount    = 16 (on)
 IO_support   =  1 (32-bit)
 unmaskirq    =  1 (on)
 using_dma    =  1 (on)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    =  8 (on)
 geometry     = 3684/240/63, sectors = 55704096, start = 0

/etc/samba/smb.conf

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 
SO_SNDBUF=8192

I'm running Redhat 8.0 using a custom built 2.4.20 kernel.  The drive 
referenced above is a Seagate 7200rpm UDMA-33 IDE hard drive.



I did a 2GB copy from

Linux to a Windows98SE machine using Samba.  I got 5.85MB/sec.

I did the same copy on a Windows XP machine and got 6.99MB/sec.

Then I copied from hdd to hdc and got 6.94MB/sec. (same channel)

Then I copied from hdd to hdb and got 9.30MB/sec. (different channel)

It seems to me that I should be able to get close to the 9.30MB/sec when
transfering over the network.

Still 9.3MB/sec is no where near the 26MB/sec hdparm is reporting...

I'm on a 100Mb switch and I'm using 3Com 905TX NICs in both the workstation 
and the server.

I guess the best my network can put out is 12MB/sec.  I was hoping to get 
around 10MB/sec with Samba.  Is this unreasonable???



More information about the samba mailing list