[libvirt] RFC: CPU counting in qemu driver

Jiri Denemark jdenemar at redhat.com
Tue Nov 23 16:48:37 UTC 2010


> > > > > What does Xen / 'xm info' report on such a host ?
> > > 
> > > nr_cpus                : 48
> > > nr_nodes               : 1
> > > sockets_per_node       : 4
> > > cores_per_socket       : 12
> > > threads_per_core       : 1
> > > node_to_cpu            : node0:0-47
> > 
> > Hmm, this was for the default case when NUMA is turned off in hypervisor.
> > After setting numa=on on xen command line, the result is a bit different:
> > 
> > nr_cpus                : 48
> > nr_nodes               : 8
> > sockets_per_node       : 0
> > cores_per_socket       : 12
> > threads_per_core       : 1
> > node_to_cpu            : node0:0-5
> >                          node1:6-11
> >                          node2:12-17
> >                          node3:18-23
> >                          node4:24-29
> >                          node5:30-35
> >                          node6:36-41
> >                          node7:42-47
> > 
> > 
> > sockets_per_node is reported to be zero.
> 
> Ah well that's completely broken. Could be they did the
> arithmetic nr_cpus / (nr_nodes * core_per_socket) and
> got 0.5 which with integer truncation gives 0. Guess
> Xen needs the same hack you're proposing for libvirt

Yeah. Also this was on old (RHEL-5) Xen. Xen-3.2.0 and newer dropped
sockets_per_node completely and we are computing it the same way as Xen did to
provide that value anyway. That is, Xen doesn't really need fixing, only xen
driver in libvirt does.

Jirka




More information about the libvir-list mailing list