Hi Babu, On 9/4/25 10:21 AM, Moger, Babu wrote: > Hi Reinette, > > On 8/14/25 21:25, Babu Moger wrote: >> Users can create as many monitor groups as RMIDs supported by the hardware. >> However, bandwidth monitoring feature on AMD system only guarantees that >> RMIDs currently assigned to a processor will be tracked by hardware. The >> counters of any other RMIDs which are no longer being tracked will be reset >> to zero. The MBM event counters return "Unavailable" for the RMIDs that are >> not tracked by hardware. So, there can be only limited number of groups >> that can give guaranteed monitoring numbers. With ever changing >> configurations there is no way to definitely know which of these groups are >> being tracked during a particular time. Users do not have the option to >> monitor a group or set of groups for a certain period of time without >> worrying about RMID being reset in between. >> >> The ABMC feature allows users to assign a hardware counter to an RMID, >> event pair and monitor bandwidth usage as long as it is assigned. The >> hardware continues to track the assigned counter until it is explicitly >> unassigned by the user. There is no need to worry about counters being >> reset during this period. Additionally, the user can specify the type of >> memory transactions (e.g., reads, writes) for the counter to track. >> >> Without ABMC enabled, monitoring will work in current mode without >> assignment option. >> >> The Linux resctrl subsystem provides an interface that allows monitoring of >> up to two memory bandwidth events per group, selected from a combination of >> available total and local events. When ABMC is enabled, two events will be >> assigned to each group by default, in line with the current interface >> design. Users will also have the option to configure which types of memory >> transactions are counted by these events. >> >> Due to the limited number of available counters (32), users may quickly >> exhaust the available counters. If the system runs out of assignable ABMC >> counters, the kernel will report an error. In such cases, users will need >> to unassign one or more active counters to free up counters for new >> assignments. resctrl will provide options to assign or unassign events >> through the group-specific interface file. >> >> The feature is detected via CPUID_Fn80000020_EBX_x00 bit 5. >> Bits Description >> 5 ABMC (Assignable Bandwidth Monitoring Counters) >> >> The feature details are documented in APM listed below [1]. >> [1] AMD64 Architecture Programmer's Manual Volume 2: System Programming >> Publication # 24593 Revision 3.41 section 19.3.3.3 Assignable Bandwidth >> Monitoring (ABMC). >> >> Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537 >> Signed-off-by: Babu Moger <babu.moger@xxxxxxx> >> Reviewed-by: Reinette Chatre <reinette.chatre@xxxxxxxxx> > > This is an FYI. I am updating the text about the documentation to address > your comment. > https://lore.kernel.org/lkml/53387aa7-0e72-4bf9-a188-43c0f78c2d6f@xxxxxxxxx/ > > > The ABMC feature details are documented in APM [1] available from [2]. > [1] AMD64 Architecture Programmer's Manual Volume 2: System Programming > Publication # 24593 Revision 3.41 section 19.3.3.3 Assignable Bandwidth > Monitoring (ABMC). > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537 # [2] > > > > Hope it is fine. Yes, thank you. I think this is a helpful addition. I assume this change will be applied to all patches in this series that contain this pattern? Reinette