On 10/22/18 4:01 AM, Wang Huaqiang wrote:
Cache Monitoring Technology (aka CMT) provides the capability
to report cache utilization information of system task.
This patch introduces the concept of resctrl monitor through
data structure virResctrlMonitor.
Signed-off-by: Wang Huaqiang <huaqiang.wang(a)intel.com>
---
src/libvirt_private.syms | 1 +
src/util/virresctrl.c | 79 ++++++++++++++++++++++++++++++++++++++++++++----
src/util/virresctrl.h | 9 ++++++
3 files changed, 83 insertions(+), 6 deletions(-)
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 335210c..d2573c5 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
[...]
@@ -275,6 +281,18 @@ virResctrlInfoMonFree(virResctrlInfoMonPtr mon)
* a sparse array to represent whether a memory bandwidth allocation happens
* on corresponding node. The available memory controller number is collected
* in 'virResctrlInfo'.
+ *
+ * =====Cache monitoring technology (CMT)=====
+ *
+ * Cache monitoring technology is used to perceive how many cache the process
+ * is using actually. virResctrlMonitor represents the resource control
+ * monitoring group, it is supported to monitor resource utilization
+ * information on granularity of vcpu.
+ *
+ * From hardware perspective, cache monitoring technology (CMT), memory
From a
+ * bandwidth technology (MBM), as well as the CAT and MBA, are all
orthogonal
+ * features. The monitor will be created under the scope of default resctl
*resctrl
+ * group if no specific CAT or MBA entries are provided for the
guest."
*/
struct _virResctrlAllocPerType {
/* There could be bool saying whether this is set or not, but since everything
@@ -320,6 +338,29 @@ struct _virResctrlAlloc {
char *path;
};
+/*
+ * virResctrlMonitor is the data structure for resctrl monitor. Resctrl
+ * monitor represents a resctrl monitoring group, which can be used to
+ * monitor the resource utilization information for either cache or
+ * memory bandwidth.
+ */
+struct _virResctrlMonitor {
+ virObject parent;
+
+ /* In resctrl, each monitor is associated with one specific allocation,
Each ResctrlMonitor is associated...
+ * either the allocation under / sys / fs / resctrl or
allocation of the
either the root directory allocation /sys/fs/resctrl or a specific
allocation defined under the root directory.
With these simple changes that I can make for you,
Reviewed-by: John Ferlan <jferlan(a)redhat.com>
John
[...]