[libvirt] [PATCH 0/5] Introduce the support of Intel RDT-MBM

Daniel P. Berrangé berrange at redhat.com
Fri Dec 13 15:57:06 UTC 2019


On Thu, Nov 14, 2019 at 01:08:18AM +0800, Wang Huaqiang wrote:
> RDT is the short for Intel Resource Director Technology, consists
> of four sub-technologies until now:
> 
>     -. CAT for cache allocation
>     -. CMT for cache usage monitoring
>     -. MBA for memory bandwidth allocation
>     -. MBM for memory bandwidth usage monitoring
> 
> The Linux kernel interface is 'resctrl' file system, and we have
> already implemented the support of CAT, CMT and MBA, to accomplish
> the tasks such as allocating a part of shared CPU last level cache
> to particular domain vcpu or a list of vcpus and monitoring the
> usage of cache, or the task of allocating a mount of memory
> bandwidth to specify domain vcpu(s).
> 
> This series is to introduce the support of MBM.
> 
> Basically the interfaces are:
> 
> ** Identify host capability **
> 
> Similar to identify the host capability of CMT, it could be gotten
> through the result of 'virsh capabilities', if following elements
> are found, then MBM is supported:
> 
>     <memory_bandwidth>
>       <monitor maxMonitors='176'>
>         <feature name='mbm_total_bytes'/>
>         <feature name='mbm_local_bytes'/>
>       </monitor>
>     </memory_bandwidth>
> 
> 'mbm_total_bytes' means supporting to report the memory bandwidth
> used by the vcpu(s) of specific monitor on all CPU sockets.
> 
> 'mbm_local_bytes' means supporting to report the memory bandwidth
> used by vcpu(s) that is passing through local CPU socket.
> 
> ** Create monitor group**
> 
> The monitor group for specific domain vcpus, for example vcpu 0-4,
> is defined in domain configuration file, in such kind of way:
> 
>   <cputune>
>     <memorytune vcpus='0-4'>
>       <monitor vcpus='0-4'/>
>     </memorytune>
>   </cputune>
> 
> ** Report memory usage **
> 
> Introduced an option '--memory' against 'virsh domstats' command
> to show the memory bandwidth usage in such way:
> (also very similar to the format of CMT result.)
> 
>     # virsh domstats --memory
> 
>     Domain: 'libvirt-vm'
>         memory.bandwidth.monitor.count=4
>         memory.bandwidth.monitor.0.name=vcpus_0-4
>         memory.bandwidth.monitor.0.vcpus=0-4
>         memory.bandwidth.monitor.0.node.count=2
>         memory.bandwidth.monitor.0.node.0.id=0
>         memory.bandwidth.monitor.0.node.0.bytes.total=14201651200
>         memory.bandwidth.monitor.0.node.0.bytes.local=7369809920
>         memory.bandwidth.monitor.0.node.1.id=1
>         memory.bandwidth.monitor.0.node.1.bytes.total=188897640448
>         memory.bandwidth.monitor.0.node.1.bytes.local=170044047360
> 
> 
> Huaqiang (5):
>   util, resctrl: using 64bit interface instead of 32bit for counters
>   conf: showing cache/memoryBW monitor features in capabilities
>   cachetune schema: a looser check for the order of <cache> and
>     <monitor> element
>   conf: Parse dommon configure file for memorytune monitors
>   virsh: show memoryBW info in 'virsh domstats' command

I've pushed patches 2, 3, & 4, so you only need update 1 & 5 and resend
those two.



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