[lkml]   [2014]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRFC: /proc/cpuinfo confusion with AMD processors
AMD defines a "Package" as the hardware processor itself.  Each Package contains
multiple Nodes, and each Node has multiple Compute Units. Each Compute Unit can
have up to 2 cores that [with the 62xx and 63xx] do not have multiple Threads.

That is, to determine the number of CPUs that Linux sees, multiply

Package * Nodes * Compute Units * Cores

Note that Nodes and Compute Units are not indicated in /proc/cpuinfo directly
(although it could be argued that they should be).

The output of /proc/cpuinfo is confusing at this point as ...

processor : 31
vendor_id : AuthenticAMD
cpu family : 21
model : 2
model name : AMD Opteron(tm) Processor 6386 SE
stepping : 0
microcode : 0x6000822
cpu MHz : 2800.000
cache size : 2048 KB
physical id : 1
siblings : 16 <<< this is number of threads per package
core id : 7 <<< this is the core id of this thread relative to node
cpu cores : 8 <<< this is the number of cores per node

which makes deciphering the system topology quite difficult as values are
relative to both nodes and the entire package. It is not possible using this
information to uniquely identify a processor.

I want to make two changes. The first is to modify /proc/cpuinfo to include
both the node information for all x86 processors and also include a "compute
unit id" field for AMD systems.

The second change would be to include the same data in /sys which currently does
not contain the above information in the topology directory.



 \ /
  Last update: 2014-06-30 16:21    [W:0.062 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site