How to see if SMP is working
Hi,
I just compiled a 2.4.22 kernel with SMP support on Debian Woody.
dmesg seems to see both CPUs, but /proc/cpuinfo shows me only one, and top -C
also only shows one.
cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 5
model name : Pentium II (Deschutes)
stepping : 2
cpu MHz : 333.272
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 mmx fxsr
bogomips : 665.19
dmesg:
found SMP MP-table at 000f6720
hm, page 000f6000 reserved twice.
hm, page 000f7000 reserved twice.
hm, page 0009f000 reserved twice.
hm, page 000a0000 reserved twice.
On node 0 totalpages: 65536
zone(0): 4096 pages.
zone(1): 61440 pages.
zone(2): 0 pages.
Intel MultiProcessor Specification v1.1
Virtual Wire compatibility mode.
OEM ID: INTEL Product ID: RD440LX DP APIC at: 0xFEE00000
Processor #0 Pentium(tm) Pro APIC version 17
I/O APIC #1 Version 17 at 0xFEC00000.
Enabling APIC mode: Flat. Using 1 I/O APICs
Processors: 1
Kernel command line: auto BOOT_IMAGE=smp ro root=802
Initializing CPU#0
Detected 333.272 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 665.19 BogoMIPS
Memory: 255752k/262144k available (1848k kernel code, 6004k reserved, 745k
data, 120k init, 0k highmem)
Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
Inode cache hash table entries: 16384 (order: 5, 131072 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 16384 (order: 4, 65536 bytes)
Page-cache hash table entries: 65536 (order: 6, 262144 bytes)
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 512K
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU: After generic, caps: 0183fbff 00000000 00000000 00000000
CPU: Common caps: 0183fbff 00000000 00000000 00000000
Enabling fast FPU save and restore... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au)
mtrr: detected mtrr type: Intel
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 512K
Intel machine check reporting enabled on CPU#0.
CPU: After generic, caps: 0183fbff 00000000 00000000 00000000
CPU: Common caps: 0183fbff 00000000 00000000 00000000
CPU0: Intel Pentium II (Deschutes) stepping 02
per-CPU timeslice cutoff: 1461.97 usecs.
enabled ExtINT on CPU#0
and top -C gives me
19:40:40 up 2:02, 1 user, load average: 2.00, 1.99, 1.88
62 processes: 58 sleeping, 4 running, 0 zombie, 0 stopped
CPU states: 0.8% user, 0.7% system, 44.8% nice, 53.7% idle
Mem: 255872K total, 213296K used, 42576K free, 83804K buffers
Swap: 645096K total, 0K used, 645096K free, 75780K cached
How do I know if the second CPU is being used? If it's not, how to I get it
to use it? I checked the Documentation directory in the kernel source, but
the smp docs doesn't say anything beyond compiling smp support into the
kernel.
Thanks
--
Kind regards
Hans du Plooy
hansdp at newingtoncs dot co dot za
Reply to: