Re: Core Topology

Christian Packmann <[email protected]> Mon, 23 Mar 2009 16:52:13 +0100
Newsgroups gmane.os.openbeos.kernel.devel
Message-ID <[email protected]>
Rene Gollent - 2009-03-23 14:46 :
> That works for me, just need to wrap my head around where / how all
> the CPU detection information is split up in the kernel since I see
> some of it happens in the boot loader and some in the actual kernel.
> Not sure yet if anything extra will be necessary to pick up the
> topology data, though I was under the impression at least some of that
> required ACPI.

ACPI may be required for multi-socket systems, but information about =

cores/threads for a single CPU should be available via CPUID calls at =

least on Intel and AMD. Haiku currently doesn't use this, otherwise we'd =

have a CPUID wrapper which allows for passing parameters to CPUID in ECX, =

which is required for Intel. This will need to be added for proper =

multi-core detection.

The CPUID function on Intel is 0xb, "x2APIC Features/Processor Topology". =

It may be necessary to enable x2APIC before this function will return =

sensible information, but I'm not sure. For details see
"Intel=AE Processor Identification and the CPUID Instruction
Application Note 485" available on Intels website - googling might be =

faster than searching for it there, though. :)

The method for AMD CPUs is detailed in the "AMD CPUID Specification", =

publication # 25481 (my revision is from April 2008, maybe AMD has a newer =

version).

HTH.

Christian

---------------------------------------------------------------------------=
---
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com