Why does Ubuntu 12.04 recognize only one processor?

6,045

Solution 1

It doesn't look like a module problem to me, the key looks to be in this line in the log:

Feb 22 08:37:27 MATTIDST002 kernel: [    0.044304] SMP motherboard not detected.
Feb 22 08:37:27 MATTIDST002 kernel: [    0.150902] SMP disabled

The kernel is detecting that your motherboard doesn't support SMP and then is disabling it. Without SMP only one processor can be active at a the same time.

In my experience this is usually caused by some BIOS option that Windows is just ignoring.

Solution 2

try $ lscpu , this will give all the cpu information .enter image description here

the lscpu command showing my corei5 processor have 32 and 64 bit both architecture and 4 CPU cores (0-3) also L1,L2,L3 cache memory .

Share:
6,045
Plinio.Santos
Author by

Plinio.Santos

I'm an Android enthusiastic, developing and contributing to open source community mainly in framework and application layers. I worked a lot in custom firmwares for GT-P3100 and GT-P6200 tablets and also with Odroid devices (http://www.hardkernel.com/main/main.php) source code. Currently I'm developing geographic information systems (GIS) to improve map creation capabilities to an public engineering company.

Updated on September 18, 2022

Comments

  • Plinio.Santos
    Plinio.Santos over 1 year

    I installed Ubuntu 12.04 LTS in a machine that has an Intel i3 processor. As far as I know, i3 processor is a multicore one and the OS should recognize 2 processors, just as Windows 7 does. Ubuntu isn't recognizing it though. Is it a known issue? Have I missed some configuration?

    $ cat /proc/cpuinfo
    
    processor       : 0
    vendor_id       : GenuineIntel
    cpu family      : 6
    model           : 37
    model name      : Intel(R) Core(TM) i3 CPU         530  @ 2.93GHz
    stepping        : 2
    microcode       : 0x9
    cpu MHz         : 2933.374
    cache size      : 4096 KB
    physical id     : 0
    siblings        : 1
    core id         : 0
    cpu cores       : 1
    apicid          : 0
    initial apicid  : 0
    fpu             : yes
    fpu_exception   : yes
    cpuid level     : 11
    wp              : yes
    flags           : 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 ht tm pbe syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm arat dtherm tpr_shadow vnmi flexpriority ept vpid
    bogomips        : 5866.74
    clflush size    : 64
    cache_alignment : 64
    address sizes   : 36 bits physical, 48 bits virtual
    power management:
    

    [EDIT]

    The output of

    $ lscpu
    

    is:

    Architecture:          x86_64
    CPU op-mode(s):        32-bit, 64-bit
    Byte Order:            Little Endian
    CPU(s):                1
    On-line CPU(s) list:   0
    Thread(s) per core:    1
    Core(s) per socket:    1
    Socket(s):             1
    NUMA node(s):          1
    Vendor ID:             GenuineIntel
    CPU family:            6
    Model:                 37
    Stepping:              2
    CPU MHz:               2933.196
    BogoMIPS:              5866.39
    Virtualization:        VT-x
    L1d cache:             32K
    L1i cache:             32K
    L2 cache:              256K
    L3 cache:              4096K
    NUMA node0 CPU(s):     0
    

    [EDIT2]

    Some additional info:

    $ grep APIC /boot/config-3.2.0-29-generic
    CONFIG_X86_X2APIC=y
    CONFIG_X86_LOCAL_APIC=y
    CONFIG_X86_IO_APIC=y
    CONFIG_PCI_IOAPIC=y
    CONFIG_KVM_APIC_ARCHITECTURE=y
    

    From /var/log/kern.log :

    Feb 22 08:37:27 MATTIDST002 kernel: [    0.000000] SMP: Allowing 1 CPUs, 0 hotplug CPUs
    ...
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.003953] CPU0: Thermal monitoring enabled (TM1)
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.003961] using mwait in idle threads.
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.004000] SMP alternatives: switching to UP code
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.010870] Freeing SMP alternatives: 24k freed
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.010881] ACPI: Core revision 20110623
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.014752] ACPI: setting ELCR to 0200 (from cc60)
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.036996] ftrace: allocating 26998 entries in 106 pages
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.044302] weird, boot CPU (#0) not listed by the BIOS.
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.044304] SMP motherboard not detected.
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150902] SMP disabled
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150904] Performance Events: PEBS fmt1+, Westmere events, Intel PMU driver.
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150911] ... version:                3
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150912] ... bit width:              48
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150914] ... generic registers:      4
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150915] ... value mask:             0000ffffffffffff
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150916] ... max period:             000000007fffffff
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150917] ... fixed-purpose events:   3
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.150919] ... event mask:             000000070000000f
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.151032] NMI watchdog enabled, takes one hw-pmu counter.
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.151050] Brought up 1 CPUs
    Feb 22 08:37:27 MATTIDST002 kernel: [    0.151052] Total of 1 processors activated (5866.45 BogoMIPS).
    

    [EDIT3]

    Even more info:

    $ grep SMP /boot/config-3.2.0-29-genericCONFIG_X86_64_SMP=y
    CONFIG_USE_GENERIC_SMP_HELPERS=y
    CONFIG_SMP=y
    # CONFIG_X86_VSMP is not set
    # CONFIG_MAXSMP is not set
    CONFIG_PM_SLEEP_SMP=y
    CONFIG_HAVE_TEXT_POKE_SMP=y
    CONFIG_SCSI_SAS_HOST_SMP=y
    CONFIG_VIDEO_VP27SMPX=m
    

    Motherboard model: Asus P7H55-M

    $ sudo lshw
    

    I'm placing here just the info from last command regarding the motherboard:

      *-core
           description: Motherboard
           product: P7H55-M BR
           vendor: ASUSTeK Computer INC.
           physical id: 0
           version: X.0x
           serial: MS2222222222222222222222222
           slot: To Be Filled By O.E.M.
         *-firmware
              description: BIOS
              vendor: American Megatrends Inc.
              physical id: 0
              version: 0602
              date: 05/11/2011
              size: 64KiB
              capacity: 8128KiB
              capabilities: isa pci pnp apm upgrade shadowing escd cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer int10video acpi usb ls120boot zipboot biosbootspecification
    

    Seems that my ubuntu installation is missing some modules, is it right? If yes, how can I install the correct ones? As this is a workstation setup and it toke a lot of time to setup this machine (setup development environment, bring up all network location, configure VPNs and so on), would be great if the solution does not involves things like format and reinstall all =p

    • NickTux
      NickTux about 11 years
      Try the lscpu command instead of cat /proc/cpuinfo . It is more reliable (IMHO) because gather info form sysfs also.
    • Admin
      Admin about 11 years
      Have you included the full output? On an older machine I see processor: 0 and a similar output for processor: 1. Although both have cpu cores: 2 unlike your output with cpu cores: 1.
  • Plinio.Santos
    Plinio.Santos about 11 years
    I edited the original post for include the output of $ lscpu
  • Plinio.Santos
    Plinio.Santos about 11 years
    @JavierRiveira I think you are right. My motherboard model is P7H55-M. Although this motherboard supports i3 530, Its BIOS has no mentions to SMP feature.
  • Rinzwind
    Rinzwind about 11 years
    @javierRiveira spot on! :)
  • NickTux
    NickTux about 11 years
    I didn't have a clue about this SMP. Thanks @JavierRiveira who illuminated me. PlinioSantos I think you can mark this answer as the correct.(IMHO)
  • Javier Rivera
    Javier Rivera about 11 years
    The BIOS has an option to reduce the number of active cores, check that it is set to 'All'. The BIOS must support SMP for Windows to detect both cores. You can also try to update the BIOS.
  • Plinio.Santos
    Plinio.Santos about 11 years
    @JavierRivera That option is already set to All and I just figured out that my BIOS is actually in newest version: 0602 support.asus.com/…
  • Plinio.Santos
    Plinio.Santos about 11 years
    ACPI options are disabled in BIOS power settings. Everything worked fine after I enabled them. Thanks you all for help! @JavierRivera, As you helped a lot, add this info to you post and I will accept it as the right answer. Thanks again.