qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH V17 00/11] Add support for binding guest numa no


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH V17 00/11] Add support for binding guest numa nodes to host numa nodes
Date: Fri, 06 Dec 2013 10:06:37 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130923 Thunderbird/17.0.9

Il 04/12/2013 08:58, Wanlong Gao ha scritto:
> According to this patch set, we are able to set guest nodes memory policy
> like following:
> 
>  -numa node,nodeid=0,cpus=0, \
>  -numa mem,size=1024M,policy=membind,host-nodes=0-1 \
>  -numa node,nodeid=1,cpus=1 \
>  -numa mem,size=1024M,policy=interleave,host-nodes=1
> 
> This supports 
> "policy={default|membind|interleave|preferred},relative=true,host-nodes=N-N" 
> like format.
> 
> And add a QMP command "query-numa" to show numa info through
> this API.

Marcelo, I'm afraid that these NUMA settings complicate getting properly
aligned pages.  If you do something like this:

  -numa node,nodeid=0,cpus=0, \
  -numa mem,size=4096M,policy=membind,host-nodes=0 \
  -numa node,nodeid=1,cpus=1 \
  -numa mem,size=4096M,policy=membind,host-nodes=1

You'll have with your patches (without them it's worse of course):

   RAM offset    physical address   node 0
   0-3840M       0-3840M            host node 0
   4096M-4352M   4096M-4352M        host node 0
   4352M-8192M   4352M-8192M        host node 1
   3840M-4096M   8192M-8448M        host node 1

So only 0-3G and 5-8G are aligned, 3G-5G and 8G-8.25G cannot use
gigabyte pages because they are split across host nodes.

So rather than your patches, it seems simpler to just widen the PCI hole
to 1G for i440FX and 2G for q35.

What do you think?

Paolo



reply via email to

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