On Wed, Jun 13, 2018 at 01:43:10PM -0500, Suravee Suthikulpanit wrote:
The current logic incorrectly calculates the LLC ID from the APIC ID.
Unless specified otherwise, the LLC ID should be calculated from
the count order of the number of threads sharing cache.
Don't you mean:
"... should be calculated by removing the Core and Thread ID bits"?
here?
I'm looking at
"2.1.10.2.1.3 ApicId Enumeration Requirements
...
Each Core::X86::Apic::ApicId[ApicId] register is preset as follows:
â ApicId[6] = Socket ID.
â ApicId[5:4] = Node ID.
â ApicId[3] = Logical CCX L3 complex ID
â ApicId[2:0]= (SMT) ? {LogicalCoreID[1:0],ThreadId} : {1'b0,LogicalCoreID[1:0]}.
and in order to get a unique LLC ID, you simply need to shift out the
CoreID and the ThreadId, right?
Or am I misreading it?