Okay, I got some answer myself.
<topology sockets='1' cores='18' threads='2'/>
This indicate the topology in one of a numa node. But what if I want to get the node’s physical socket number?
Best Regards
Eli Qiao(乔立勇)OpenStack Core team OTC Intel.
--
From:
"Qiao, Liyong" <liyong.qiao@intel.com>
Date: Wednesday, 11 January 2017 at 2:52 PM
To: "libvir-list@redhat.com" <libvir-list@redhat.com>
Cc: "Daniel P. Berrange" <berrange@redhat.com>
Subject: Paradox cpu topology in capabilities outputs
Hi,
I observe that virsh capabilities give wrong cpu topology on a multiple sockets host
taget@jfz1r04h13:~/libvirt$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 72
On-line CPU(s) list: 0-71
Thread(s) per core: 2
Core(s) per socket: 18
Socket(s): 2
ß----------------------
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 63
Model name: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
Stepping: 2
CPU MHz: 1201.660
CPU max MHz: 3600.0000
CPU min MHz: 1200.0000
BogoMIPS: 4590.78
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 46080K
NUMA node0 CPU(s): 0-17,36-53
NUMA node1 CPU(s): 18-35,54-71
But output of virsh capabilities only gives.
<topology sockets='1' cores='18' threads='2'/>
looking into code and got this:
https://libvirt.org/git/?p=libvirt.git;a=blob;f=src/util/virhostcpu.c;h=f29f3122acee018b9fd7dca06fd7ae1fc118b210;hb=HEAD#l703
should we change it into
704 *sockets += nodesockets;
This also affect nodeinfo.sockets.
Attached file is the full output of capabilities of the host
Best Regards
Eli Qiao(乔立勇)OpenStack Core team OTC Intel.
--