qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] -numa and -smp options


From: Bharata B Rao
Subject: [Qemu-devel] -numa and -smp options
Date: Tue, 16 Aug 2011 14:36:30 +0530

Hi,

While trying out -numa and -smp command line options, I found that it
is possible to specify inconsistent or impossible or incomplete
topology specifications on qemu command line and have qemu silently
boot a VM with such a topology without complaining.

Example 1:  With "-numa node,nodeid=0,cpus=0-1 -numa
node,nodeid=1,cpus=2-3 -smp sockets=2,cores=2,threads=2", the topology
looks like this:

address@hidden:~# lstopo
object intersection without inclusion!
Machine (1024MB)
  NUMANode #0 (phys=0 512MB)
    L2 #0 (4096KB) + Core #0
      L1 #0 (32KB) + PU #0 (phys=0)
      L1 #1 (32KB) + PU #1 (phys=1)
    Socket #0
      L2 #1 (4096KB) + Core #1
        L1 #2 (32KB) + PU #2 (phys=4)
        L1 #3 (32KB) + PU #3 (phys=5)
      L2 #2 (4096KB) + Core #2
        L1 #4 (32KB) + PU #4 (phys=6)
        L1 #5 (32KB) + PU #5 (phys=7)
  NUMANode #1 (phys=1 512MB) + L2 #3 (4096KB) + Core #3
    L1 #6 (32KB) + PU #6 (phys=2)
    L1 #7 (32KB) + PU #7 (phys=3)

Here the -numa specification was incomplete, but qemu chose to put
CPUs incorrectly in 2 nodes.

Example 2: node,nodeid=0,cpus=8-11 -numa node,nodeid=1,cpus=9-15 -smp
sockets=2,cores=2,threads=2

address@hidden:~# lstopo
Machine (1024MB)
  NUMANode #0 (phys=0 512MB)
    Socket #0
      L2 #0 (4096KB) + Core #0
        L1 #0 (32KB) + PU #0 (phys=0)
        L1 #1 (32KB) + PU #1 (phys=1)
      L2 #1 (4096KB) + Core #1
        L1 #2 (32KB) + PU #2 (phys=2)
        L1 #3 (32KB) + PU #3 (phys=3)
    Socket #1
      L2 #2 (4096KB) + Core #2
        L1 #4 (32KB) + PU #4 (phys=4)
        L1 #5 (32KB) + PU #5 (phys=5)
      L2 #3 (4096KB) + Core #3
        L1 #6 (32KB) + PU #6 (phys=6)
        L1 #7 (32KB) + PU #7 (phys=7)
  NUMANode #1 (phys=1 512MB)

So looks like, what CPUs we specify in -numa doesn't matter and if its
wrong, VM will some up with some odd topology.
Shouldn't qemu check if the -numa and -smp specification are
compatible with each other ?

Regards,
Bharata.
-- 
http://bharata.sulekha.com/blog/posts.htm, http://raobharata.wordpress.com/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]