linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Moger, Babu" <babu.moger@amd.com>
To: corbet@lwn.net, tony.luck@intel.com, reinette.chatre@intel.com,
	tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com
Cc: Dave.Martin@arm.com, james.morse@arm.com, x86@kernel.org,
	hpa@zytor.com, akpm@linux-foundation.org, rostedt@goodmis.org,
	paulmck@kernel.org, pawan.kumar.gupta@linux.intel.com,
	kees@kernel.org, arnd@arndb.de, fvdl@google.com,
	seanjc@google.com, thomas.lendacky@amd.com,
	yosry.ahmed@linux.dev, xin@zytor.com, sohil.mehta@intel.com,
	kai.huang@intel.com, xiaoyao.li@intel.com, peterz@infradead.org,
	mario.limonciello@amd.com, xin3.li@intel.com, perry.yuan@amd.com,
	chang.seok.bae@intel.com, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, peternewman@google.com,
	eranian@google.com, gautham.shenoy@amd.com
Subject: Re: [PATCH v17 05/33] x86/cpufeatures: Add support for Assignable Bandwidth Monitoring Counters (ABMC)
Date: Thu, 4 Sep 2025 12:21:49 -0500	[thread overview]
Message-ID: <55dbe7ee-8e4a-4f09-b00e-8e879d8f6ad6@amd.com> (raw)
In-Reply-To: <8f2c506c2e0bdc4ab3e4736435d683ceb5322839.1755224735.git.babu.moger@amd.com>

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@amd.com>
> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com>

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@intel.com/


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.

Thanks

Babu



  reply	other threads:[~2025-09-04 17:21 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-15  2:25 [PATCH v17 00/33] x86,fs/resctrl: Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-08-15  2:25 ` [PATCH v17 01/33] x86,fs/resctrl: Consolidate monitor event descriptions Babu Moger
2025-08-15  2:25 ` [PATCH v17 02/33] x86,fs/resctrl: Replace architecture event enabled checks Babu Moger
2025-08-15  2:25 ` [PATCH v17 03/33] x86/resctrl: Remove 'rdt_mon_features' global variable Babu Moger
2025-08-15  2:25 ` [PATCH v17 04/33] x86,fs/resctrl: Prepare for more monitor events Babu Moger
2025-08-15  2:25 ` [PATCH v17 05/33] x86/cpufeatures: Add support for Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-09-04 17:21   ` Moger, Babu [this message]
2025-09-04 17:35     ` Reinette Chatre
2025-09-04 18:02       ` Moger, Babu
2025-08-15  2:25 ` [PATCH v17 06/33] x86/resctrl: Add ABMC feature in the command line options Babu Moger
2025-08-15  2:25 ` [PATCH v17 07/33] x86,fs/resctrl: Consolidate monitoring related data from rdt_resource Babu Moger
2025-08-15  2:25 ` [PATCH v17 08/33] x86,fs/resctrl: Detect Assignable Bandwidth Monitoring feature details Babu Moger
2025-09-03  2:29   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 09/33] x86/resctrl: Add support to enable/disable AMD ABMC feature Babu Moger
2025-08-15  2:25 ` [PATCH v17 10/33] fs/resctrl: Introduce the interface to display monitoring modes Babu Moger
2025-09-03  2:30   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 11/33] fs/resctrl: Add resctrl file to display number of assignable counters Babu Moger
2025-09-03  2:30   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 12/33] fs/resctrl: Introduce mbm_cntr_cfg to track assignable counters per domain Babu Moger
2025-08-15  2:25 ` [PATCH v17 13/33] fs/resctrl: Introduce interface to display number of free MBM counters Babu Moger
2025-09-03  2:31   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 14/33] x86/resctrl: Add data structures and definitions for ABMC assignment Babu Moger
2025-08-15  2:25 ` [PATCH v17 15/33] fs/resctrl: Introduce event configuration field in struct mon_evt Babu Moger
2025-09-03  2:32   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 16/33] x86,fs/resctrl: Implement resctrl_arch_config_cntr() to assign a counter with ABMC Babu Moger
2025-08-15  2:25 ` [PATCH v17 17/33] fs/resctrl: Add the functionality to assign MBM events Babu Moger
2025-09-03  2:32   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 18/33] fs/resctrl: Add the functionality to unassign " Babu Moger
2025-09-03  2:33   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 19/33] fs/resctrl: Pass struct rdtgroup instead of individual members Babu Moger
2025-08-15  2:25 ` [PATCH v17 20/33] fs/resctrl: Introduce counter ID read, reset calls in mbm_event mode Babu Moger
2025-09-03  2:33   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 21/33] x86/resctrl: Refactor resctrl_arch_rmid_read() Babu Moger
2025-08-15  2:25 ` [PATCH v17 22/33] x86/resctrl: Implement resctrl_arch_reset_cntr() and resctrl_arch_cntr_read() Babu Moger
2025-09-03  2:34   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 23/33] fs/resctrl: Support counter read/reset with mbm_event assignment mode Babu Moger
2025-09-03  2:34   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 24/33] fs/resctrl: Add event configuration directory under info/L3_MON/ Babu Moger
2025-09-03  2:35   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 25/33] fs/resctrl: Provide interface to update the event configurations Babu Moger
2025-09-03  2:41   ` Reinette Chatre
2025-09-03 17:38     ` Moger, Babu
2025-09-03 17:55       ` Reinette Chatre
2025-09-03 18:32         ` Moger, Babu
2025-09-03 20:52           ` Reinette Chatre
2025-09-03 22:03             ` Moger, Babu
2025-08-15  2:25 ` [PATCH v17 26/33] fs/resctrl: Introduce mbm_assign_on_mkdir to enable assignments on mkdir Babu Moger
2025-09-03  2:44   ` Reinette Chatre
2025-09-03 18:53     ` Moger, Babu
2025-08-15  2:25 ` [PATCH v17 27/33] fs/resctrl: Auto assign counters on mkdir and clean up on group removal Babu Moger
2025-09-03  2:45   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 28/33] fs/resctrl: Introduce mbm_L3_assignments to list assignments in a group Babu Moger
2025-09-03  2:59   ` Reinette Chatre
2025-09-03 19:16     ` Moger, Babu
2025-08-15  2:25 ` [PATCH v17 29/33] fs/resctrl: Introduce the interface to modify " Babu Moger
2025-09-03  3:00   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 30/33] fs/resctrl: Disable BMEC event configuration when mbm_event mode is enabled Babu Moger
2025-09-03  3:01   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 31/33] fs/resctrl: Introduce the interface to switch between monitor modes Babu Moger
2025-09-03  3:11   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 32/33] x86/resctrl: Configure mbm_event mode if supported Babu Moger
2025-09-03  3:13   ` Reinette Chatre
2025-08-15  2:25 ` [PATCH v17 33/33] MAINTAINERS: resctrl: add myself as reviewer Babu Moger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55dbe7ee-8e4a-4f09-b00e-8e879d8f6ad6@amd.com \
    --to=babu.moger@amd.com \
    --cc=Dave.Martin@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=bp@alien8.de \
    --cc=chang.seok.bae@intel.com \
    --cc=corbet@lwn.net \
    --cc=dave.hansen@linux.intel.com \
    --cc=eranian@google.com \
    --cc=fvdl@google.com \
    --cc=gautham.shenoy@amd.com \
    --cc=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=kai.huang@intel.com \
    --cc=kees@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mingo@redhat.com \
    --cc=paulmck@kernel.org \
    --cc=pawan.kumar.gupta@linux.intel.com \
    --cc=perry.yuan@amd.com \
    --cc=peternewman@google.com \
    --cc=peterz@infradead.org \
    --cc=reinette.chatre@intel.com \
    --cc=rostedt@goodmis.org \
    --cc=seanjc@google.com \
    --cc=sohil.mehta@intel.com \
    --cc=tglx@linutronix.de \
    --cc=thomas.lendacky@amd.com \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=xiaoyao.li@intel.com \
    --cc=xin3.li@intel.com \
    --cc=xin@zytor.com \
    --cc=yosry.ahmed@linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).