My computer has an i5-4300U processor. It has 4 logical processors.
And the maximum cpu name is \_PR.CPU3
:
According to the ACPI spec, one of the ACPI tables, the DSDT table (Differentiated System Description Table) should describe my platform. So I use the RW Everything to dump the ACPI tables on my computer.
In DSDT, I see this:
DefinitionBlock ("DSDT.AML", "DSDT", 0x01, "LENOVO", "TP-GJ ", 0x00002410)
{
Scope(\_PR)
{
Processor(CPU0,0x01,0x00001810,0x06) {}
Processor(CPU1,0x02,0x00001810,0x06) {}
Processor(CPU2,0x03,0x00001810,0x06) {}
Processor(CPU3,0x04,0x00001810,0x06) {}
Processor(CPU4,0x05,0x00001810,0x06) {}
Processor(CPU5,0x06,0x00001810,0x06) {}
Processor(CPU6,0x07,0x00001810,0x06) {}
Processor(CPU7,0x08,0x00001810,0x06) {}
}
So it seems the DSDT claims 8 processors, which seems not match my machine. And what's more strange is, it still can work.
What's going on here?
The reason for the extra CPU tables from what I can gather is because your i5 cpu has 2 logical cores hyperthreaded which would equal 4 cores suggesting that your system is also available with an i7 cpu option that has 4 logical cores hyperthreaded which would equal 8 cores.
For example. I am running a system with 2x Xeon E5-2650 v2 CPUs, the CPU scope in my DSDT holds 4 SCK (SCK0 SCK1 SCK2 SCK3) definitions and 32 CPU definitions in each totalling out to 128 CPU definitions, currently only 32 of them are being used (16 for each CPU or 16 in both SCK0 and SCK1 definitions), the rest are disabled dynamically based on the amount of cores currently accessible by the system. This would be the case with your system.