看板 FB_smp 關於我們 聯絡資訊
On Mar 11, 2009, at 9:03 AM, Oliver Fromme wrote: >> I also tried 6.4 with exactly the same wrong results as 6.2. > > That's suprising. Actually I think that all fixes to the > CPU detection code have been backported to 6-stable. > Cores are detected correctly, but not used all by default (hyperthreading_allowed=0). When I change hyperthreading_allowed to 1 on a running system it starts to use all cores. When switch back to 0, uses only 1 core of each cpu. >> 7.1 is OK, but is has hyperthreading_allowed=1 by default. > > What happens if you set hyperthreading_allowed=0 on 7.1? > no change. 7.1 uses all cores regardless of value of hyperthreading_allowed > Are you 100% sure that your processor are really multi-core > and not just hyperthreaded? Please post the relevant lines > from /var/run/dmesg.boot or output from the `dmesg` command > (as Adrian already suggested), preferably on a recent > FreeBSD system (i.e. 7.1). The top 25 lines should be > sufficient. I have tried 6.2, 6.4 and 7.1 on two different servers. The first server of them (older) is Intel SE7501HG2 + 2 x Xeon 2.44GHz (2 cores in each Xeon) The second one (newer) is Intel S5000VSA + 2 x Xeon 2.66GHz (4 cores in each Xeon) ================= dmesg 6.2 on the newer hardware =================== > Copyright (c) 1992-2007 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 6.2-RELEASE #1: Sun Mar 8 20:02:38 CET 2009 root@[machine name removed]:/usr/src/sys/i386/compile/ HERON-62-2009-03-08 ACPI APIC Table: <INTEL S5000VSA> Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Xeon(TM) CPU 2.66GHz (2660.02-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf64 Stepping = 4 Features = 0xbfebfbff < FPU ,VME ,DE ,PSE ,TSC ,MSR ,PAE ,MCE ,CX8 ,APIC ,SEP ,MTRR ,PGE ,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0xe4bd<SSE3,RSVD2,MON,DS_CPL,VMX,EST,CNTX- ID,CX16,<b14>,<b15>> AMD Features=0x20100000<NX,LM> AMD Features2=0x1<LAHF> Cores per package: 2 Logical CPUs per core: 2 real memory = 2680160256 (2556 MB) avail memory = 2622218240 (2500 MB) FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 cpu2 (AP): APIC ID: 2 cpu3 (AP): APIC ID: 3 cpu4 (AP): APIC ID: 4 cpu5 (AP): APIC ID: 5 cpu6 (AP): APIC ID: 6 cpu7 (AP): APIC ID: 7 ioapic0 <Version 2.0> irqs 0-23 on motherboard ioapic1 <Version 2.0> irqs 24-47 on motherboard lapic0: Forcing LINT1 to edge trigger kbd1 at kbdmux0 acpi0: <INTEL S5000VSA> on motherboard acpi0: Power Button (fixed) Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0 cpu0: <ACPI CPU> on acpi0 acpi_throttle0: <ACPI CPU Throttling> on cpu0 cpu1: <ACPI CPU> on acpi0 acpi_throttle1: <ACPI CPU Throttling> on cpu1 acpi_throttle1: failed to attach P_CNT device_attach: acpi_throttle1 attach returned 6 cpu2: <ACPI CPU> on acpi0 acpi_throttle2: <ACPI CPU Throttling> on cpu2 acpi_throttle2: failed to attach P_CNT device_attach: acpi_throttle2 attach returned 6 cpu3: <ACPI CPU> on acpi0 acpi_throttle3: <ACPI CPU Throttling> on cpu3 acpi_throttle3: failed to attach P_CNT device_attach: acpi_throttle3 attach returned 6 cpu4: <ACPI CPU> on acpi0 acpi_throttle4: <ACPI CPU Throttling> on cpu4 acpi_throttle4: failed to attach P_CNT device_attach: acpi_throttle4 attach returned 6 cpu5: <ACPI CPU> on acpi0 acpi_throttle5: <ACPI CPU Throttling> on cpu5 acpi_throttle5: failed to attach P_CNT device_attach: acpi_throttle5 attach returned 6 cpu6: <ACPI CPU> on acpi0 acpi_throttle6: <ACPI CPU Throttling> on cpu6 acpi_throttle6: failed to attach P_CNT device_attach: acpi_throttle6 attach returned 6 cpu7: <ACPI CPU> on acpi0 acpi_throttle7: <ACPI CPU Throttling> on cpu7 acpi_throttle7: failed to attach P_CNT device_attach: acpi_throttle7 attach returned 6 ================== dmesg 7.1 on the older hardware ==================== Copyright (c) 1992-2009 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 7.1-RELEASE #1: Wed Mar 11 10:38:08 CET 2009 root@[machine name removed]:/usr/src/sys/i386/compile/HERON Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Xeon(TM) CPU 2.40GHz (2392.29-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf25 Stepping = 5 Features = 0xbfebfbff < FPU ,VME ,DE ,PSE ,TSC ,MSR ,PAE ,MCE ,CX8 ,APIC ,SEP ,MTRR ,PGE ,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x4400<CNXT-ID,xTPR> Logical CPUs per core: 2 real memory = 4026466304 (3839 MB) avail memory = 3942027264 (3759 MB) ACPI APIC Table: <INTEL S7501HG0> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 cpu2 (AP): APIC ID: 6 cpu3 (AP): APIC ID: 7 ioapic0 <Version 2.0> irqs 0-23 on motherboard ioapic1 <Version 2.0> irqs 24-47 on motherboard ioapic2 <Version 2.0> irqs 48-71 on motherboard lapic0: Forcing LINT1 to edge trigger kbd1 at kbdmux0 acpi0: <INTEL S7501HG0> on motherboard ACPI Warning (dswload-0794): Type override - [DEB_] had invalid type (Integer) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [MLIB] had invalid type (Integer) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [DATA] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [SIO_] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [LEDP] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [GPEN] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [GPST] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [GP1N] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [WUES] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [WUSE] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [SBID] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [SWCE] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ACPI Warning (dswload-0794): Type override - [SMIR] had invalid type (String) for Scope operator, changed to (Scope) [20070320] ======================================================================== I observed that hardware does not make any difference. 6.2 and 6.4 uses all cores when machdep.hyperthreading_allowed=1 7.1 uses all cores regardless of value of machdep.hyperthreading_allowed variable. Regards, Robert _______________________________________________ freebsd-smp@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-smp To unsubscribe, send any mail to "freebsd-smp-unsubscribe@freebsd.org"