Re: Identification of HTT cores on newer (CPUID leaf 11) Intel processors

From: Andriy Gapon <avg_at_FreeBSD.org>
Date: Wed, 14 Sep 2011 22:56:14 +0300
on 14/09/2011 20:59 Andrew Boyer said the following:
> When FreeBSD examines the CPU topology using CPUID leaf 11 in
> topo_probe_0xb(), it never sets hyperthreading_cpus.  At the end of
> topo_probe_0x4() it sets hyperthreading_cpus = cpu_logical.
> 
> Adding that assignment to line 316 of sys/amd64/amd64/mp_machdep.c seems to
> do the right thing on a system with two quad-core E5620 CPUs.  The APIC IDs
> that appear when SMT is enabled in the BIOS get marked AP/HT.
> 
> Do you agree?

I agree, but...
But see this:
http://thread.gmane.org/gmane.os.freebsd.devel.hackers/44007/focus=44024

Someone long ago has decided that new HTT is not the same as old HTT and that
some rules that apply to old HTT should not apply to new HTT.  Even the name.
I think that that's not correct.
But it doesn't seem that I am able to engage into a discussion the person who
made that decision.  Also I can not find any other interested developer either.

Anyway, hyperthreading_cpus variable is useless beyond dmesg cosmetics.
And I don't think that any of my changes affected the dmesg output.

In my "avgBSD" I have different SMP topology code, but it's not ready yet to be
submitted for merge into the main tree.

-- 
Andriy Gapon
Received on Wed Sep 14 2011 - 17:56:23 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:17 UTC