[Tfug] Dual cores and hyperthreading

Harry McGregor micros at osef.org
Sun Aug 20 13:21:57 MST 2006


John Gruenenfelder wrote:

>The kernel config help for the "HT scheduler" item is not crystal clear, but I
>think it says it is simply adding the availabilty of a HT scheduler which the
>kernel can then choose to use or not.
>
>However, according to "cpuid" output, this architecture supports
>hyperthreading.  But, after chatting briefly with Rik van Reil (kernel memory
>architecture guru) on #kernelnewbies, he informed me that while the base
>architecture supports HT, my particular CPU (core duo) only has one thread per
>core.
>
>So... the question would then be, will the kernel make the right choice in
>this case?  If it only checks for the HT feature bit, it might use the less
>optimal scheduler.  If it checks for both the feature bit and the number of
>threads it should make the right choice.  Looking at dmesg output, though, I
>didn't see any indication either way.
>
>However... in this case, in my last email I was actually referring to the fact
>that I had set the CPU type for my kernel compile to P4.  I had confused the
>pentium-m with the pentium4m, which Harry cleared up for me.  So when I
>recompiled, I made sure to set the CPU type correctly.  And, since I was
>already recompiling for that, I switched off the HT scheduler option since
>this hardware doesn't need it.
>  
>
Here is my guess, and it's only a guess.

Intel kept the HT in the CPUID, so that they would side step software 
licensing.  Windows XP Home is only single CPU, but it does support "HT" 
CPUs, or quasi dual CPU (SP2 required IIRC).

Thus instead of calling it an SMP processor, calling it HT enabled, 
permits XP home to use both cores.


                                  Harry





More information about the tfug mailing list