From owner-freebsd-smp Fri Oct 29 17:33:32 1999 Delivered-To: freebsd-smp@freebsd.org Received: from bajor.hosteng.org (bajor.hosteng.org [194.248.74.241]) by hub.freebsd.org (Postfix) with ESMTP id CBBD214A19 for ; Fri, 29 Oct 1999 17:33:11 -0700 (PDT) (envelope-from ivar@hosteng.org) Received: from praxis (praxis.hosteng.org [194.248.74.243]) by bajor.hosteng.org (8.9.3/8.9.3) with SMTP id CAA00401 for ; Sat, 30 Oct 1999 02:33:07 +0200 (CEST) (envelope-from ivar@hosteng.org) From: "=?iso-8859-1?Q?Ivar_E._H=F8steng?=" To: Subject: Samba performance problems running on FreeBSD 3.3-STABLE using the SMP kernal and 2 PPros Date: Sat, 30 Oct 1999 02:33:05 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org -----BEGIN PGP SIGNED MESSAGE----- I have just discovered that my performance problems with samba (2.0.5a) dissapears if I build a non SMP version of the FreeBSD kernal on my dual 200Mhz PPro system. Using the SMP enabled kernal writes from the Windows98 explorer is painfully slow. A 121MB file takes around 30 minutes to copy from a local harddisk on the win98 machine to a samba share on the FreeBSD server. Using the exactly same kernel and samba configuration except commenting out the SMP stuff in the kernel config file the same copy takes aroud 20 seconds. Reads from the samba share are not noticably affected when using the nonSMP kernal. Here is my kernel config file: # # SMP-GENERIC -- Smp machine with WD/AHx/NCR/BTx family disks # # For more information read the handbook part System Administration - -> # Configuring the FreeBSD Kernel -> The Configuration File. # The handbook is available in /usr/share/doc/handbook or online as # latest version from the FreeBSD World Wide Web server # # # An exhaustive list of options and more detailed explanations of the # device lines is present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # # $Id: SMP-GENERIC,v 1.17 1998/10/16 04:44:05 peter Exp $ machine "i386" # SMP does NOT support 386/486 CPUs. #cpu "I386_CPU" #cpu "I486_CPU" cpu "I686_CPU" ident Ivar maxusers 100 # Create a SMP capable kernel (mandatory options): options SMP # Symmetric MultiProcessor Kernel options APIC_IO # Symmetric (APIC) I/O # Optional, these are the defaults: #options NCPU=2 # number of CPUs #options NBUS=4 # number of busses #options NAPIC=1 # number of IO APICs #options NINTR=24 # number of INTs # Lets always enable the kernel debugger for SMP. options DDB # SMP shouldn't need x87 emulation, disable by default. #options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MFS_ROOT #MFS usable as root device, "MFS" req'ed options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, "NFS" req'ed options MSDOSFS #MSDOS Filesystem options "CD9660" #ISO 9660 Filesystem options "CD9660_ROOT" #CD-ROM usable as root. "CD9660" req'ed options PROCFS #Process filesystem options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=3000 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options FAILSAFE #Be conservative options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor options IPFIREWALL options IPFIREWALL_VERBOSE options IPDIVERT options IPFILTER options IPFILTER_LOG config kernel root on wd0 controller isa0 controller pci0 controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr disk fd0 at fdc0 drive 0 # Unless you know very well what you're doing, leave ft0 at drive 2, or # remove the line entirely if you don't need it. Trying to configure # it on another unit might cause surprises, see PR kern/7176. options "CMD640" # work around CMD640 chip deficiency controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wdc0 drive 0 options ATAPI #Enable ATAPI support for IDE bus options ATAPI_STATIC #Don't do it as an LKM # A single entry for any of these controllers (ncr, ahb, ahc, amd) is # sufficient for any number of installed devices. controller ahc0 # This controller offers a number of configuration options, too many to # document here - see the LINT file in this directory and look up the # dpt0 entry there for much fuller documentation on this. controller scbus0 device da0 device sa0 device pass0 device cd0 #Only need one of these, the code dynamically grows # atkbdc0 controls both the keyboard and the PS/2 mouse controller atkbdc0 at isa? port IO_KBD tty device atkbd0 at isa? tty irq 1 device psm0 at isa? tty irq 12 device vga0 at isa? port ? conflicts # splash screen/screen saver pseudo-device splash # syscons is the default console driver, resembling an SCO console device sc0 at isa? tty device npx0 at isa? port "IO_NPX" irq 13 vector npxintr # # Laptop support (see LINT for more options) # device sio0 at isa? port "IO_COM1" flags 0x10 tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr # Parallel port device ppc0 at isa? port? flags 0x40 net irq 7 controller ppbus0 # Parallel port bus (required) device lpt0 at ppbus? # Printer device plip0 at ppbus? # TCP/IP over parallel device ppi0 at ppbus? # Parallel port interface device #controller vpo0 at ppbus? # Requires scbus and da0 # Order is important here due to intrusive probes, do *not* alphabetize # this list of network interfaces until the probes have been fixed. # Right now it appears that the ie0 must be probed before ep0. See # revision 1.20 of this file. device fxp0 device xl0 pseudo-device loop pseudo-device ether pseudo-device vn 10 pseudo-device sl 1 pseudo-device ppp 1 pseudo-device tun 8 pseudo-device ccd 4 pseudo-device pty 256 pseudo-device gzip # Exec gzipped a.out's # KTRACE enables the system-call tracing facility ktrace(2). # This adds 4 KB bloat to your kernel, and slightly increases # the costs of each syscall. options KTRACE #kernel tracing # This provides support for System V shared memory. # options SYSVSHM options SYSVMSG options SYSVSEM # The `bpfilter' pseudo-device enables the Berkeley Packet Filter. Be # aware of the legal and administrative consequences of enabling this # option. The number of devices determines the maximum number of # simultaneous BPF clients programs runnable. pseudo-device bpfilter 4 #Berkeley packet filter pseudo-device snp 4 mptable gives the following output: ====================================================================== ======== MPTable, version 2.0.15 looking for EBDA pointer @ 0x040e, found, searching EBDA @ 0x0009fc00 searching CMOS 'top of mem' @ 0x0009f800 (638K) searching default 'top of mem' @ 0x0009fc00 (639K) searching BIOS @ 0x000f0000 MP FPS found in BIOS @ physical addr: 0x000f7ed0 - ---------------------------------------------------------------------- - -------- MP Floating Pointer Structure: location: BIOS physical address: 0x000f7ed0 signature: '_MP_' length: 16 bytes version: 1.4 checksum: 0x33 mode: Virtual Wire - ---------------------------------------------------------------------- - -------- MP Config Table Header: physical address: 0x000f7ee0 signature: 'PCMP' base table length: 260 version: 1.4 checksum: 0xce OEM ID: 'INTEL ' Product ID: 'PR440FX ' OEM table pointer: 0x00000000 OEM table size: 0 entry count: 24 local APIC address: 0xfec08000 extended table length: 100 extended table checksum: 49 - ---------------------------------------------------------------------- - -------- MP Config Base Table Entries: - -- Processors: APIC ID Version State Family Model Step Flags 0 0x11 BSP, usable 6 1 9 0xfbff 12 0x11 AP, usable 6 1 9 0xfbff - -- Bus: Bus ID Type 0 PCI 1 PCI 18 ISA - -- I/O APICs: APIC ID Version State Address 13 0x11 usable 0xfec00000 - -- I/O Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# ExtINT active-hi edge 18 0 13 0 INT active-hi edge 18 1 13 1 INT active-hi edge 18 3 13 3 INT active-hi edge 18 4 13 4 INT active-hi edge 18 5 13 5 INT active-hi edge 18 6 13 6 INT active-hi edge 18 7 13 7 INT active-hi edge 18 8 13 8 INT active-hi edge 18 9 13 9 INT active-hi edge 18 12 13 12 INT active-hi edge 18 14 13 14 INT active-lo level 1 5:A 13 18 INT active-lo level 1 4:A 13 17 INT active-lo level 0 19:A 13 19 INT active-lo level 0 17:A 13 18 INT active-lo level 0 11:A 13 16 INT active-lo level 0 9:A 13 17 INT active-lo level 0 6:A 13 18 - -- Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# - ---------------------------------------------------------------------- - -------- MP Config Extended Table Entries: - -- bus ID: 0 address type: memory address address base: 0xd8000 address range: 0x4000 - -- bus ID: 0 address type: memory address address base: 0xdc000 address range: 0x4000 - -- bus ID: 0 address type: memory address address base: 0xa0000 address range: 0x20000 - -- bus ID: 0 address type: memory address address base: 0x8000000 address range: 0xf8000000 - -- bus ID: 0 address type: I/O address address base: 0x0 address range: 0x10000 - ---------------------------------------------------------------------- - -------- # SMP kernel config file options: # Required: options SMP # Symmetric MultiProcessor Kernel options APIC_IO # Symmetric (APIC) I/O # Optional (built-in defaults will work in most cases): #options NCPU=2 # number of CPUs #options NBUS=3 # number of busses #options NAPIC=1 # number of IO APICs #options NINTR=24 # number of INTs ====================================================================== ======== and dmesg: Copyright (c) 1992-1999 FreeBSD Inc. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 3.3-STABLE #4: Sun Oct 10 16:58:15 CEST 1999 ivar@bajor.hosteng.org:/usr/src/sys/compile/ivar Timecounter "i8254" frequency 1193182 Hz CPU: Pentium Pro (686-class CPU) Origin = "GenuineIntel" Id = 0x619 Stepping = 9 Features=0xfbff real memory = 134217728 (131072K bytes) avail memory = 127315968 (124332K bytes) Programming 24 pins in IOAPIC #0 FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfec08000 cpu1 (AP): apic id: 12, version: 0x00040011, at 0xfec08000 io0 (APIC): apic id: 13, version: 0x00170011, at 0xfec00000 Preloaded elf kernel "kernel" at 0xc02f7000. Pentium Pro MTRR support enabled Probing for devices on PCI bus 0: chip0: rev 0x02 on pci0.0.0 fxp0: rev 0x01 int a irq 18 on pci0.6.0 fxp0: Ethernet address 00:a0:c9:06:bf:a6 chip1: rev 0x01 on pci0.7.0 ide_pci0: rev 0x00 on pci0.7.1 ahc0: rev 0x00 int a irq 17 on pci0.9.0 ahc0: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs xl0: <3Com 3c905-TX Fast Etherlink XL> rev 0x00 int a irq 16 on pci0.11.0 xl0: Ethernet address: 00:60:97:1d:07:a9 xl0: autoneg not complete, no carrier (forcing half-duplex, 10Mbps) chip2: rev 0x02 on pci0.15.0 ahc1: rev 0x01 int a irq 18 on pci0.17.0 ahc1: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs vga0: rev 0x00 int a irq 19 on pci0.19.0 Probing for devices on PCI bus 1: ahc2: rev 0x00 int a irq 17 on pci1.4.0 ahc2: aic7870 Single Channel A, SCSI Id=7, 16/255 SCBs ahc3: rev 0x00 int a irq 18 on pci1.5.0 ahc3: aic7870 Single Channel B, SCSI Id=7, 16/255 SCBs Probing for devices on the ISA bus: sc0 on isa sc0: VGA color <16 virtual consoles, flags=0x0> atkbdc0 at 0x60-0x6f on motherboard atkbd0 irq 1 on isa psm0 not found sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa sio0: type 16550A, console sio1: configured irq 3 not in bitmap of probed irqs 0 sio1 not found at 0x2f8 fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa fdc0: FIFO enabled, 8 bytes threshold fd0: 1.44MB 3.5in wdc0 not found at 0x1f0 ppc0 at 0x378 irq 7 flags 0x40 on isa ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode ppb0: IEEE1284 device found /NIBBLE/ECP Probing for PnP devices on ppbus0: ppbus0: PJL,MLC,PCLXL,PCL,POSTSCRIPT lpt0: on ppbus 0 lpt0: Interrupt-driven port ppi0: on ppbus 0 plip0: on ppbus 0 vga0 at 0x3b0-0x3df maddr 0xa0000 msize 131072 on isa npx0 on motherboard npx0: INT 16 interface APIC_IO: routing 8254 via 8259 on pin 0 IP packet filtering initialized, divert enabled, rule-based forwarding disabled, unlimited logging ccd0-3: Concatenated disk drivers IP Filter: initialized. Default = pass all, Logging = enabled Waiting 3 seconds for SCSI devices to settle SMP: AP CPU #1 Launched! sa0 at ahc2 bus 0 target 2 lun 0 sa0: Removable Sequential Access SCSI-2 device sa0: 10.000MB/s transfers (10.000MHz, offset 15) da0 at ahc0 bus 0 target 0 lun 0 da0: Fixed Direct Access SCSI-2 device da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled da0: 4340MB (8888924 512 byte sectors: 255H 63S/T 553C) da1 at ahc0 bus 0 target 1 lun 0 da1: Fixed Direct Access SCSI-2 device da1: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled da1: 8683MB (17783240 512 byte sectors: 255H 63S/T 1106C) da4 at ahc2 bus 0 target 0 lun 0 da4: Fixed Direct Access SCSI-2 device da4: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled da4: 8669MB (17755614 512 byte sectors: 255H 63S/T 1105C) cd0 at ahc3 bus 0 target 3 lun 0 cd0: Removable CD-ROM SCSI-2 device cd0: 4.629MB/s transfers (4.629MHz, offset 8) cd0: cd present [125982 x 2048 byte records] da3 at ahc1 bus 0 target 4 lun 0 da3: Fixed Direct Access SCSI-2 device da3: 20.000MB/s transfers (10.000MHz, offset 8, 16bit), Tagged Queueing Enabled da3: 8683MB (17783240 512 byte sectors: 255H 63S/T 1106C) da2 at ahc1 bus 0 target 0 lun 0 da2: Fixed Direct Access SCSI-2 device da2: 20.000MB/s transfers (10.000MHz, offset 8, 16bit), Tagged Queueing Enabled da2: 8683MB (17783240 512 byte sectors: 255H 63S/T 1106C) changing root device to da0s1a Does anyone have a clue of why this is happening? Regards, Ivar E. Hosteng email: ivar@hosteng.org -----BEGIN PGP SIGNATURE----- Version: PGP 6.5.1i for non-commercial use iQCVAwUBOBousXeH1nNr2gf9AQEK8wP+K6GT9v0XQQXIp0w8r9xAUWKCxxz5IFAO 1h8p661eAKl8fr3Eq+/Fj4JYP3zJ6l+D4jXlcwfXUBcbr0NEUCfvN0kFRMvMxfkl VN9PfmpZMWo/mGdB8yj9A9jLMnG7OWBpE5Ls1J3mTLyx94V0750hXHXI8z2lGMi2 HHTb2rnlccA= =D7iQ -----END PGP SIGNATURE----- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message