Subject: Why are things so slow?
To: None <port-mips@netbsd.org>
From: Matt Thomas <matt@3am-software.com>
List: port-mips
Date: 06/07/2000 20:23:29
I have three systems:
a DECstation 5000/125:
NetBSD 1.4ZA (GENERIC) #0: Wed Jun 7 19:17:46 PDT 2000
matt@pilot.local:/other/src/sys/arch/pmax/compile/GENERIC
DECstation 5000/125 (3MIN)
total memory = 32768 KB
avail memory = 27592 KB
using 435 buffers containing 1740 KB of memory
mainbus0 (root)
cpu0 at mainbus0: MIPS R3000 CPU Rev. 3.0 with MIPS R3010 FPC Rev. 4.0
cpu0: 64KB Instruction, 64KB Data, direct mapped cache
a VAXstation 4000/60: (comparable in speed to a DECstation 3100)
VAXstation 4000/60
cpu: KA46
cpu: turning on floating point chip
total memory = 40560 KB
avail memory = 34632 KB
using 532 buffers containing 2128 KB of memory
mainbus0 (root)
vsbus0 at mainbus0
vsbus0: 32K entry DMA SGMAP at PA 0x5e0000 (VA 0x805e0000)
vsbus0: interrupt mask 0
a NEC MobilePro 800:
matt@pilot.local:/other/src/sys/arch/hpcmips/compile/GENERIC
NEC MobilePro 800 (NEC VR4121 rev0.0 131.072MHz)
total memory = 32768 KB
avail memory = 27824 KB
using 435 buffers containing 1740 KB of memory
../../../../arch/hpcmips/vr/vr.c(294): vr_bus_reset() not implemented.
mainbus0 (root)
cpu0 at mainbus0: NEC VR4100 CPU Rev. 6.0 with software emulated floating
point
Rev. 0.0
cpu0: L1 cache: 16KB/16B instruction, 8KB/16B data, direct mapped
cpu0: No L2 cache
They are all running diskless off the same NFS server. ttcp numbers
are all comparable:
mp800:
matt@fireball> ttcp -r -s -f k
ttcp-r: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp
ttcp-r: socket
ttcp-r: accept from 192.168.1.24
ttcp-r: 16777216 bytes in 18.92 real seconds = 6927.96 Kbit/sec +++
ttcp-r: 11558 I/O calls, msec/call = 1.68, calls/sec = 610.91
ttcp-r: 0.0user 1.6sys 0:18real 8% 0i+0d 0maxrss 0+1pf 11553+24csw
ds5000/125:
matt@fireball> ttcp -r -s -f k
ttcp-r: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp
ttcp-r: socket
ttcp-r: accept from 192.168.1.9
ttcp-r: 16777216 bytes in 20.26 real seconds = 6468.77 Kbit/sec +++
ttcp-r: 11649 I/O calls, msec/call = 1.78, calls/sec = 574.91
ttcp-r: 0.0user 1.5sys 0:20real 7% 0i+0d 0maxrss 0+1pf 11578+83csw
vs4000/60:
matt@fireball> ttcp -r -s -f k
ttcp-r: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp
ttcp-r: socket
ttcp-r: accept from 192.168.1.8
ttcp-r: 16777216 bytes in 17.41 real seconds = 7530.50 Kbit/sec +++
ttcp-r: 11656 I/O calls, msec/call = 1.53, calls/sec = 669.67
ttcp-r: 0.1user 1.5sys 0:17real 9% 0i+0d 0maxrss 0+1pf 11649+22csw
So why does this happen?
(cd usr.bin/make; make clean; csh -c 'time make')
ds5k: 580.7u 183.2s 13:20.01 95.4% 0+0k 15+923io 1193pf+0w
mp800: 352.1u 68.2s 7:23.12 94.8% 0+0k 12+846io 256pf+0w
vs4k: ???.?u ??.?s 5:42.70 ??.?% 0+0k 19+331io 471pf+0w
cobalt: 91.1u 16.7s 2:01.75 88.6% 0+0k 786+974io 1078pf+0w
Granted some of this is diffence in compiler complexity but the
mp800 should be faster than the vs4000/60 considering its has
about 10x the clock speed.
--
Matt Thomas Internet: matt@3am-software.com
3am Software Foundry WWW URL: http://www.3am-software.com/bio/matt/
Cupertino, CA Disclaimer: I avow all knowledge of this message