Date: Fri, 2 May 1997 09:33:26 +0200 From: Andreas Klemm <andreas@klemm.gtn.com> To: Steve Passe <smp@csn.net> Cc: Chuck Robey <chuckr@mat.net>, Walter Haslbeck <WH@ODS.de>, smp@FreeBSD.ORG, everybodyunix@wup.de, jk@ct.heise.de Subject: Re: Dual PPro Mainboard f. SCO SMP Message-ID: <19970502093326.00399@klemm.gtn.com> In-Reply-To: <199705012145.PAA08539@Ilsa.StevesCafe.com>; from Steve Passe on Thu, May 01, 1997 at 03:45:42PM -0600 References: <Pine.BSF.3.91.970501170835.2470B-100000@Journey2.mat.net> <199705012145.PAA08539@Ilsa.StevesCafe.com>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --]
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
[-- Attachment #2 --]
#! /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
[-- Attachment #3 --]
#
# 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
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970502093326.00399>
