[libvirt] [PATCH v5 1/4] numa: describe siblings distances within cells

Daniel P. Berrange berrange at redhat.com
Fri Oct 13 08:49:48 UTC 2017


On Thu, Oct 12, 2017 at 09:31:54PM +0200, Wim Ten Have wrote:
> From: Wim ten Have <wim.ten.have at oracle.com>
> 
> Add support for describing NUMA distances in a domain's <numa> <cell>
> XML description.
> 
> Below is an example of a 4 node setup:
> 
>   <cpu>
>     <numa>
>       <cell id='0' cpus='0-3' memory='2097152' unit='KiB'>
>         <distances>
>           <sibling id='0' value='10'/>
>           <sibling id='1' value='21'/>
>           <sibling id='2' value='31'/>
>           <sibling id='3' value='21'/>
>         </distances>
>       </cell>
>       <cell id='1' cpus='4-7' memory='2097152' unit='KiB'>
>         <distances>
>           <sibling id='0' value='21'/>
>           <sibling id='1' value='10'/>
>           <sibling id='2' value='21'/>
>           <sibling id='3' value='31'/>
>         </distances>
>       </cell>
>       <cell id='2' cpus='8-11' memory='2097152' unit='KiB'>
>         <distances>
>           <sibling id='0' value='31'/>
>           <sibling id='1' value='21'/>
>           <sibling id='2' value='10'/>
>           <sibling id='3' value='21'/>
>         </distances>
>       <cell id='3' cpus='12-15' memory='2097152' unit='KiB'>
>         <distances>
>           <sibling id='0' value='21'/>
>           <sibling id='1' value='31'/>
>           <sibling id='2' value='21'/>
>           <sibling id='3' value='10'/>
>         </distances>
>       </cell>
>     </numa>
>   </cpu>
> 
> A <cell> defines a NUMA node. <distances> describes the NUMA distance
> from the <cell> to the other NUMA nodes (the <sibling>s).  For example,
> in above XML description, the distance between NUMA node0 <cell id='0'
> ...> and NUMA node2 <sibling id='2' ...> is 31.
> 
> Valid distance value are '10 <= value <= 255'.  A distance value of 10
> represents the distance to the node itself.  A distance value of 20
> represents the default value for remote nodes but other values are
> possible depending on the physical topology of the system.
> 
> When distances are not fully described, any missing sibling distance
> values will default to 10 for local nodes and 20 for remote nodes.

Nitpick, IIUC, if distance is given for A -> B, then we default
B -> A to the same value instead of 20.

> Signed-off-by: Wim ten Have <wim.ten.have at oracle.com>

None the less for the code/design:

Reviewed-by: Daniel P. Berrange <berrange at redhat.com>


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list