cvs commit: src/sys/boot/i386/cdboot cdboot.s

Alexander Leidinger Alexander at
Wed Apr 12 19:24:01 UTC 2006

Am Wed, 12 Apr 2006 09:40:15 -0600
schrieb Scott Long <scottl at>:

> Alexander Leidinger wrote:
> > Harti Brandt <hartmut.brandt at> wrote:
> > 
> >> There is very good article in the last C't (, but the
> >> article is only in the printed version) which explains all the different
> > 
> > 
> > Yes! Now I remember where I've read about it...
> Anyone care to provide a translation?

3 full pages... I think a summary would be better than a translation:

Pentium D and Athlon 64 X2 mimic itself as CPU's with 2 threads (P4
Extreme = 4 threads).

Old definition for the HTT bit in the feature register: "HTT:
Hyper-Threading Technologiy." The processor supports Hyper-Threading

New (rev 15 of "Intel Soft. Developer Manual Vol 2a, Jan 06,
25366618.pdf)): "HTT: Multi-Threading." The physical processor package
is capable of supporting more than one logical processor.

For AMD X2:
If bit 1 in CPUID (0x80000001).ECX is set, it means (= CMP_LEGACY:
Core MultiProcessor LEGACY) that the CPU is "lying" regarding the old
meaning of HTT (= there may be some real cores instead of only HT).

CPUID(0x80000008).ECX[7..0] gives the number of real cores.

For Intel:
Number of cores is in CPUID(4).EAX[31..26] (you need to call it with
ecx=0). The information is inconsistent between the CPUID doc
(Jan 06, 28161830.pdf, "= number of cores on this Die") and the Software
Development Manual (Jan 06, 25366818.pdf, "= max number of cores in this
physical package")

The article also talks about the inital APIC-ID in CPUID(1).EBX[31..24]
(extended to 8 bit with the xAPIC extension of the P4/xeon, and now
changed again (variable sizing of the fields!) for the multi-core

They also have a graph for the detection logic (multi or single core,
with or without HTT) and some tables (e.g. assignment between local
APIC-ID and initial APIC-ID).

Here's link to some software and some C++ code they provide:

If someone needs more infos regarding a specific topic, just ask.


     The three Rs of Microsoft support: Retry, Reboot, Reinstall.                       Alexander @
  GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7

More information about the cvs-src mailing list