[libvirt] [PATCH 0/5] Introduce the support of Intel RDT-MBM
Han Han
hhan at redhat.com
Thu Nov 14 06:43:24 UTC 2019
Just a reminder that libvirt binds need to be updated after patches
introduced.
Refer to libvirt python and perl bindings:
commit b0a7747
Author: Pavel Hrdina <phrdina at redhat.com>
Date: Fri Sep 20 11:14:35 2019 +0200
virDomainMemoryStats: include disk caches
Introduced in libvirt 4.6.0 by commit <aee04655089>.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1683516
Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>
commit e562e58
Author: Daniel P. Berrangé <berrange at redhat.com>
Date: Wed May 22 14:07:57 2019 +0100
Add new hugetlb memory stats constants
Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
On Wed, Nov 13, 2019 at 6:34 PM Wang Huaqiang <huaqiang.wang at intel.com>
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
>
> docs/schemas/domaincommon.rng | 91 +++++++++---------
> include/libvirt/libvirt-domain.h | 1 +
> src/conf/capabilities.c | 4 +-
> src/conf/domain_conf.c | 44 +++++++--
> src/libvirt-domain.c | 21 +++++
> src/qemu/qemu_driver.c | 103 ++++++++++++++++++++-
> src/util/virfile.c | 40 ++++++++
> src/util/virfile.h | 2 +
> src/util/virresctrl.c | 6 +-
> src/util/virresctrl.h | 2 +-
> tests/genericxml2xmlindata/cachetune.xml | 1 +
> tests/genericxml2xmlindata/memorytune.xml | 5 +
> tests/genericxml2xmloutdata/cachetune.xml | 34 +++++++
> tests/genericxml2xmloutdata/memorytune.xml | 42 +++++++++
> tests/genericxml2xmltest.c | 4 +-
> tools/virsh-domain-monitor.c | 7 ++
> tools/virsh.pod | 23 ++++-
> 17 files changed, 367 insertions(+), 63 deletions(-)
> create mode 100644 tests/genericxml2xmloutdata/cachetune.xml
> create mode 100644 tests/genericxml2xmloutdata/memorytune.xml
>
> --
> 2.23.0
>
>
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
>
>
--
Best regards,
-----------------------------------
Han Han
Quality Engineer
Redhat.
Email: hhan at redhat.com
Phone: +861065339333
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20191114/a79f4374/attachment-0001.htm>
More information about the libvir-list
mailing list