On Tue, Aug 06 2024 at 17:00, 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 for certain point of time. Users do not have the option > to monitor a group or set of groups for certain period of time without > worrying about RMID being reset in between. > > The ABMC feature provides an option to the user to assign a hardware > counter to an RMID and monitor the bandwidth as long as it is assigned. > The assigned RMID will be tracked by the hardware until the user unassigns > it manually. There is no need to worry about counters being reset during > this period. Additionally, the user can specify a bitmask identifying the > specific bandwidth types from the given source to track with the counter. > > Without ABMC enabled, monitoring will work in current mode without > assignment option. > > Linux resctrl subsystem provides the interface to count maximum of two > memory bandwidth events per group, from a combination of available total > and local events. Keeping the current interface, users can enable a maximum > of 2 ABMC counters per group. User will also have the option to enable only > one counter to the group. If the system runs out of assignable ABMC > counters, kernel will display an error. Users need to disable an already > enabled counter to make space for new assignments. > > The feature can be detected via CPUID_Fn80000020_EBX_x00 bit 5. > Bits Description > 5 ABMC (Assignable Bandwidth Monitoring Counters) Can you please update the CPUID database with that new bit: https://gitlab.com/x86-cpuid.org/x86-cpuid-db Thanks, tglx