From owner-freebsd-smp Fri May 2 00:53:51 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id AAA19209 for smp-outgoing; Fri, 2 May 1997 00:53:51 -0700 (PDT) Received: from news1.gtn.com (news1.gtn.com [192.109.159.3]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id AAA19204 for ; Fri, 2 May 1997 00:53:45 -0700 (PDT) Received: (from uucp@localhost) by news1.gtn.com (8.7.2/8.7.2) with UUCP id JAA07098; Fri, 2 May 1997 09:45:14 +0200 (MET DST) Received: (from andreas@localhost) by klemm.gtn.com (8.8.5/8.8.2) id JAA10114; Fri, 2 May 1997 09:33:26 +0200 (CEST) Message-ID: <19970502093326.00399@klemm.gtn.com> Date: Fri, 2 May 1997 09:33:26 +0200 From: Andreas Klemm To: Steve Passe Cc: Chuck Robey , Walter Haslbeck , smp@FreeBSD.ORG, everybodyunix@wup.de, jk@ct.heise.de Subject: Re: Dual PPro Mainboard f. SCO SMP References: <199705012145.PAA08539@Ilsa.StevesCafe.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="/9DWx/yDrRhgMJTb" X-Mailer: Mutt 0.69 In-Reply-To: <199705012145.PAA08539@Ilsa.StevesCafe.com>; from Steve Passe on Thu, May 01, 1997 at 03:45:42PM -0600 X-Disclaimer: A free society is one where it is safe to be unpopular X-Operating-System: FreeBSD 3.0-CURRENT Sender: owner-smp@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=us-ascii On Thu, May 01, 1997 at 03:45:42PM -0600, Steve Passe wrote: > Hi, > > >Andreas, I think you really ought to double check this. When I did my > >own checks on my SMP setup, I found that just running make -j 8 (without > >going smp) gave a serious speedup. There WAS additional speedup when I > >turned on smp, but it's NOT 2 for 1. To do the benchmark correctly, you > >have to run the same program in both places, and turning on the -j 8 > >feature for smp only is fooling you. I did the benchmarks in single user mode and automated with a script. Everytime in the _same_ directory /bisdn/compile/BISDNSMP. I used for Uniprocessor and SMP kernel the same kernel config file, I use -pipe -O for compilation. Before starting all benchmarks I did a make depend all and then removed only *.o. >From now on every benchmark ran in the same directory, with a script in single user mode and every run started with a 'rm *.o'. I think more accurate isn't possible ;-) > being a bi-noid I always have trouble with statistical type math, > but I would set the difference shown by these figures as 1.79 > > using "-j4" for UP and "-j8" for SMP is fair, as these produce > the best results for each case. > > the time for UP at -j4: 213.17 > the time for SMP at -j8: 119.08 Well yes, these are the values I was referring, too. > 213.17 / 119.08 == 1.789696 > > not quite 2-1, but not shabby. Well, am I wrong ? I saw it the other way around. Single processor mode gave us the value 213.17. This is the 100% value. SMP gives us a better values. How good ? 119.08 / 213.17 = 0.55 If it would be exactly 0.5, then it would be half the time, so a 100% speedup, so factor 2. 0.55 is exactly 90% speed gain, factor 1.9. > Chuck, you might want to re-try your test compiles, we have > gained some speed with recent changes. I can give you my script and kernel config file, so that you are nearly doing the same ... -- Andreas Klemm | klemm.gtn.com - powered by Symmetric MultiProcessor FreeBSD http://www.freebsd.org/~fsmp/SMP/SMP.html http://www.freebsd.org/~fsmp/SMP/benches.html --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=kbench #! /bin/sh prefix=/bisdn/compile cd ${prefix}/BISDNSMP for i in 1 2 4 8 16 do rm -f *.o sync time make -j $i all >> ${prefix}/kbench.out 2>> ${prefix}/kbench.err sync done --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=BISDNSMP # # BISDN kernel # machine "i386" cpu "I686_CPU" ident BISDNSMP maxusers 64 # SMP Stuff options SMP # Symmetric MultiProcessor Kernel options APIC_IO # Symmetric (APIC) I/O options SMP_INVLTLB # TLB shootdowns (ONLY with APIC_IO) # Debugging #options DDB #options KTRACE #kernel tracing options SHOW_BUSYBUFS # busy buffers on shutdown ? # Networking options INET #InterNETworking options IPFIREWALL #firewall options IPFIREWALL_VERBOSE #print information about dropped packets options "IPFIREWALL_VERBOSE_LIMIT=100" #limit verbosity # filesystems options FFS #Berkeley Fast Filesystem options NFS #Network File System options MFS #Memory File System options PROCFS #Process filesystem options MSDOSFS #MS DOS File System options "CD9660" #ISO 9660 filesystem options NSWAPDEV=3 #Allow this many swap-devices. # misc options options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options UCONSOLE #Allow users to grab the console options SYSVSHM,SYSVSEM,SYSVMSG #shared memory (X11) options "MD5" options COMPAT_LINUX # Linux Binary compatibility config kernel root on sd1 # ISA and PCI BUS support controller isa0 controller pci0 # Floppy Disk Controller controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr disk fd0 at fdc0 drive 0 # AHA 2940 PCI Controller controller ahc0 # SCSI Devices controller scbus0 device sd0 # Harddisk 0 - DOS/FreeBSD SMP device sd1 # Harddisk 1 - FreeBSD Boot device sd2 # Harddisk 2 - FreeBSD local device st0 # TDC 4222 device cd0 # TOSHIBA XM-5701TA 3136 options AHC_TAGENABLE # tagged command queueing options AHC_ALLOW_MEMIO options AHC_SCBPAGING_ENABLE options SCSI_REPORT_GEOMETRY # SCO compatible system console device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr options MAXCONS=4 # number of virtual consoles # floating point unit device npx0 at isa? port "IO_NPX" flags 0x1 irq 13 vector npxintr # serial devices on mainboard device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr # parallel device on mainboard device lpt0 at isa? port? tty irq 7 vector lptintr # PS/2 mouse on mainboard device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr options "PSM_ACCEL=1" # PS/2 mouse acceleration # Joystick device joy0 at isa? port "IO_GAME" # Network 3COM PCI # device vx0 device ed0 at isa? port 0x280 net irq 10 iomem 0xd0000 vector edintr # Soundblaster 16 # SoundBlaster DSP driver - for SB, SB Pro, SB16, PAS(emulating SB) # SoundBlaster 16 DSP driver - for SB16 - requires sb0 device # SoundBlaster 16 MIDI - for SB16 - requires sb0 device # Yamaha OPL-2/OPL-3 FM - for SB, SB Pro, SB16, PAS controller snd0 device sb0 at isa? port 0x220 irq 5 conflicts drq 1 vector sbintr device sbxvi0 at isa? port? irq? drq 5 conflicts device sbmidi0 at isa? port 0x330 irq? conflicts device opl0 at isa? port 0x388 conflicts # Pseudo devices pseudo-device loop pseudo-device ether pseudo-device log #Kernel syslog interface (/dev/klog) pseudo-device vn 1 #Vnode driver (turns a file into a dev.) pseudo-device tun 1 #user mode ppp pseudo-device bpfilter 2 #Berkeley packet filter pseudo-device pty 16 pseudo-device gzip # Exec gzipped a.out's # BISDN options IPI_VJ # Van Jacobsen header compression support #options "IPI_DIPA=3" # send ip accounting packets every 3 seconds options TELES_HAS_MEMCPYB # bisdn 0.97 # Teles S0/16.3 ###################################################### IRQ 9 ## controller tel0 at isa? port 0xd80 net irq 9 vector telintr pseudo-device disdn pseudo-device isdn pseudo-device ipi 1 pseudo-device ispy 1 #pseudo-device itel 1 --/9DWx/yDrRhgMJTb--