[libvirt] [RFC] Data in the <topology> element in the capabilities XML

Peter Krempa pkrempa at redhat.com
Thu Jan 17 16:14:30 UTC 2013


On 01/17/13 16:43, Daniel P. Berrange wrote:
>> I beg to differ:
>>
>> "This technology is informally called CMT (Clustered Multi-Thread)
>> and formally called "module" by the AMD's marketing service, but
>> whose real name is "Clustered Integer" Core Technology. In terms of
>> hardware complexity and functionality, this "module" is midway
>> between a true dual-core processor and its integer power (each
>> thread having a fully independent integer core) and a single core
>> processor that has the SMT ability, which can create a dual threads
>> processor but with the power of one (each thread shares the
>> resources of the core with the other thread)."
>>
>> (source: http://en.wikipedia.org/wiki/Bulldozer_(microarchitecture)#BULLDOZER_Core_.28aka_Module.29
>> )
>>
>> oVirt/vdsm considers the "Module" as a core with two threads, where
>> others consider it more as separate cores. The performance depends
>> on the type of task that is being run on the module.
>
> So what information does VDSM use to identify this hardware topology.
>

VDSM uses the <topology> element (subelement of cpu) in the capabilities 
and multiplies the numbers by the number of numa nodes. As the data 
there is taken from nodeinfo, this breaks on some systems.

>
> In some form or another we need to be providing the more detailed and
> accurate topology infomation in the capabilities NUMA description.
>
> What does 'hwloc --no-io --no-caches' shown on a Bulldozer machine ?

# hwloc-info --no-io --no-caches
depth 0:	1 Machine (type #1)
  depth 1:	2 Socket (type #3)
   depth 2:	4 NUMANode (type #2)
    depth 3:	32 Core (type #5)
     depth 4:	32 PU (type #6)

hwloc recognizes it as cores ...

# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                32
On-line CPU(s) list:   0-31
Thread(s) per core:    2
Core(s) per socket:    8
Socket(s):             2

... lscpu as as threads ...

NUMA node(s):          4
Vendor ID:             AuthenticAMD
CPU family:            21
Model:                 1
Stepping:              2
CPU MHz:               1400.000
BogoMIPS:              4389.80
Virtualization:        AMD-V
L1d cache:             16K
L1i cache:             64K
L2 cache:              2048K
L3 cache:              6144K
NUMA node0 CPU(s):     0-7
NUMA node1 CPU(s):     8-15
NUMA node2 CPU(s):     16-23
NUMA node3 CPU(s):     24-31


>
> Daniel
>




More information about the libvir-list mailing list