Subject: NetBSD/vax now runs multicpu
To: None <netbsd-announce@netbsd.org>
From: Hubert Feyrer <hubertf@netbsd.org>
List: netbsd-announce
Date: 05/31/2001 17:25:12
* NetBSD/vax now runs multicpu
Anders Magnusson got his VAX 8350 to use all three processors.
of the code is in the source tree already, the rest will undergo
a bit more cleanup and polishing, and will then be committed to
the development branch, NetBSD-current.
The VAX 8350 system is probably the slowest multiprocessor system
that NetBSD will ever support; each CPU does about 2VUPS (~2MIPS).
Note that the 8350 normally only has two CPUs, the third one was
plugged in for testing purpose.
It shouldn't be too hard to make NetBSD/vax running on some funnier
machines, like the 8800, which has two 6VUPS KA88 CPUs, and the
6000 series, which can take up to six CPUs with upto 32VUPS
altogether. Stay tuned!
For curious parties, there's a dmesg(8) and top(1) output below,
note the "3 on processor" in top(1) output. Also, for all the youth
out there spoiled by workstations and PCs, here are a few pictures
showing what a /real/ computer looks like:
Here's a VAX8800 (the four rightmost sections with brown top):
http://www.ludd.luth.se/gallery/ludd1-mII/ftp.luth.se_mark_IV-4.jpg
Here's the 8350 Anders has been working with:
http://www.ludd.luth.se/gallery/ludd1-mII/8350-1.jpg
This is a 6000, merely a 6320 (two CPUs, 4 VUPS each):
http://www.ludd.luth.se/gallery/ludd3-mII/6320.jpg
Enjoy!
- Hubert Feyrer
The NetBSD Project
dmesg(8) says:
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 1.5V (GENERIC.MP) #41: Wed May 30 17:46:57 CEST 2001
ragge@bakfull:/usr/home/ragge/tmp/syssrc/sys/arch/vax/compile/GENERIC.MP
VAX 8200
total memory = 49148 KB
avail memory = 41848 KB
using 640 buffers containing 2560 KB of memory
mainbus0 (root)
bi0 at mainbus0
klesi at bi0 node 0 [sadr 20400000 eadr 20440000] not configured
cpu0 at bi0 node 2: ka825 (master) cpu rev 2, u patch rev 28, sec patch 1
kdb0 at bi0 node 4 vec 520
mscpbus0 at kdb0: version 3 model 2
ra0 at mscpbus0 drive 0: RA90
ra0: nspt 52 group 1 ngpc 15 rct 780 nrpt 1 nrct 2
ra1 at mscpbus0 drive 1: RA90
ra1: nspt 69 group 1 ngpc 13 rct 414 nrpt 1 nrct 4
cpu1 at bi0 node 7: ka825 (slave) cpu rev 2, u patch rev 29, sec patch 1
ni0 at bi0 node 8 vec 540: DEBNA
ni0: hardware address 08:00:2b:0b:cd:05
cpu2 at bi0 node 9: ka825 (slave) cpu rev 2, u patch rev 28, sec patch 1
dmb32 at bi0 node 10 unsupported
mem0 at bi0 node 11: size 16MB, 1M chips
mem1 at bi0 node 12 [sadr 1000000 eadr 2000000]: size 16MB, 1M chips
mem2 at bi0 node 13 [sadr 2000000 eadr 3000000]: size 16MB, 1M chips
booted from type 98 unit 0 csr 0x20010000 adapter 8 slave 0
boot device: ni0
root on ni0
mountroot: trying cd9660...
mountroot: trying nfs...
nfs_boot: trying DHCP/BOOTP
nfs_boot: BOOTP server: 130.240.16.34
nfs_boot: my_addr=130.240.16.204
nfs_boot: my_mask=255.255.255.0
root on zen:/export/root/nisse
root time: 0x3b0d6ac7
Clock has lost 11256 day(s) - CHECK AND RESET THE DATE.
root file system type: nfs
cpu1: running
cpu2: running
init: copying out path `/sbin/init' 11
/etc/rc.conf is not configured. Multiuser boot aborted.
Enter pathname of shell or RETURN for sh:
Terminal type? [unknown]
#
top(1) output:
load averages: 0.77, 0.61, 0.28 09:42:47
11 processes: 8 sleeping, 3 on processor
Memory: 2476K Act, 156K Wired, 38M Free
PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
38 root 49 0 108K 368K onproc 0:05 74.31% 16.46% top
37 root 31 0 132K 352K onproc 0:51 26.59% 7.86% bc
32 root 10 0 444K 92K sleep 0:01 9.83% 3.56% sh
36 root 28 0 132K 352K onproc 0:05 9.17% 3.03% bc
31 root 10 0 24K 268K sleep 0:03 5.12% 1.86% time
29 root 10 0 444K 136K sleep 0:01 4.85% 1.76% sh
35 root 10 0 24K 268K sleep 0:00 5.03% 1.66% time
28 root 10 0 444K 80K sleep 0:01 0.00% 0.00% sh
1 root 10 0 248K 64K sleep 0:01 0.00% 0.00% init
33 root 10 0 444K 136K sleep 0:00 0.00% 0.00% sh
11 root 10 0 444K 312K sleep ??? 0.00% 0.00% sh
(Running two 'echo "2^9999/3^6308" | /usr/bin/time bc')
--
NetBSD - because Unix isn't just #include <linux.h>, i386, ILP32, ELF, ...!