[libvirt] [PATCHv7 02/18] util: Introduce resctrl monitor for CMT

Huaqiang,Wang huaqiang.wang at intel.com
Tue Nov 6 08:33:00 UTC 2018



On 2018年11月05日 23:02, John Ferlan wrote:
>
> 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 at 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 at redhat.com>
>
> John

Please help me correct these errors.
Thanks for the review.
Huaqiang

>
> [...]




More information about the libvir-list mailing list