Hi Babu, On 12/22/2022 3:31 PM, Babu Moger wrote: > Update the documentation for the new features: > 1. Slow Memory Bandwidth allocation (SMBA). > With this feature, the QOS enforcement policies can be applied > to the external slow memory connected to the host. QOS enforcement > is accomplished by assigning a Class Of Service (COS) to a processor > and specifying allocations or limits for that COS for each resource > to be allocated. > > 2. Bandwidth Monitoring Event Configuration (BMEC). > The bandwidth monitoring events mbm_total_bytes and mbm_local_bytes > are set to count all the total and local reads/writes respectively. > With the introduction of slow memory, the two counters are not > enough to count all the different types of memory events. With the > feature BMEC, the users have the option to configure mbm_total_bytes > and mbm_local_bytes to count the specific type of events. > > Also add configuration instructions with examples. > > Signed-off-by: Babu Moger <babu.moger@xxxxxxx> > --- > Documentation/x86/resctrl.rst | 141 +++++++++++++++++++++++++++++++++- > 1 file changed, 139 insertions(+), 2 deletions(-) > > diff --git a/Documentation/x86/resctrl.rst b/Documentation/x86/resctrl.rst > index 71a531061e4e..bea6cab06873 100644 > --- a/Documentation/x86/resctrl.rst > +++ b/Documentation/x86/resctrl.rst > @@ -17,14 +17,16 @@ AMD refers to this feature as AMD Platform Quality of Service(AMD QoS). > This feature is enabled by the CONFIG_X86_CPU_RESCTRL and the x86 /proc/cpuinfo > flag bits: > > -============================================= ================================ > +=============================================== ================================ > RDT (Resource Director Technology) Allocation "rdt_a" > CAT (Cache Allocation Technology) "cat_l3", "cat_l2" > CDP (Code and Data Prioritization) "cdp_l3", "cdp_l2" > CQM (Cache QoS Monitoring) "cqm_llc", "cqm_occup_llc" > MBM (Memory Bandwidth Monitoring) "cqm_mbm_total", "cqm_mbm_local" > MBA (Memory Bandwidth Allocation) "mba" > -============================================= ================================ > +SMBA (Slow Memory Bandwidth Allocation) "smba" > +BMEC (Bandwidth Monitoring Event Configuration) "bmec" > +=============================================== ================================ > > To use the feature mount the file system:: > > @@ -161,6 +163,82 @@ with the following files: > "mon_features": > Lists the monitoring events if > monitoring is enabled for the resource. > + Example:: > + > + # cat /sys/fs/resctrl/info/L3_MON/mon_features > + llc_occupancy > + mbm_total_bytes > + mbm_local_bytes > + > + If the system supports Bandwidth Monitoring Event > + Configuration (BMEC), then the bandwidth events will > + be configurable. The output will be:: > + > + # cat /sys/fs/resctrl/info/L3_MON/mon_features > + llc_occupancy > + mbm_total_bytes > + mbm_total_bytes_config > + mbm_local_bytes > + mbm_local_bytes_config > + > +"mbm_total_bytes_config", "mbm_local_bytes_config": > + Read/write files containing the configuration for the mbm_total_bytes > + and mbm_local_bytes events, respectively, when the Bandwidth > + Monitoring Event Configuration (BMEC) feature is supported. > + The event configuration settings are domain specific and affect > + all the CPUs in the domain. When an event configuration is changed, > + the bandwidth counters for all the RMIDs and the events will be > + cleared for that domain. The next read for every RMID will report I think it needs to be emphasized that configuring one event impacts all events. How about (please feel free to change): "When either event configuration is changed, the bandwidth counters for all RMIDs of both events (mbm_total_bytes as well as mbm_local_bytes) are cleared for that domain. The next read ..." > + "Unavailable" and subsequent reads will report the valid value. > + Reinette