From: Reinette Chatre <reinette.chatre@intel.com>
To: "Chen, Yu C" <yu.c.chen@intel.com>
Cc: Borislav Petkov <bp@alien8.de>,
Thomas Gleixner <tglx@linutronix.de>,
"Dave Hansen" <dave.hansen@linux.intel.com>,
Peter Newman <peternewman@google.com>,
"x86@kernel.org" <x86@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Ben Horgan <ben.horgan@arm.com>, Tony Luck <tony.luck@intel.com>,
Dave Martin <Dave.Martin@arm.com>,
James Morse <james.morse@arm.com>,
Drew Fustini <fustini@kernel.org>,
Babu Moger <babu.moger@amd.com>, Fenghua Yu <fenghuay@nvidia.com>
Subject: Re: [RFC] mpam,x86,fs/resctrl: Generic schema description Proof of Concept
Date: Wed, 10 Jun 2026 08:59:48 -0700 [thread overview]
Message-ID: <b1bd93b1-58b7-4967-ac33-952f8a73cb9b@intel.com> (raw)
In-Reply-To: <8bd94a5f-1460-4bc3-a2b2-68a298200ad8@intel.com>
Hi Chenyu,
On 6/10/26 12:09 AM, Chen, Yu C wrote:
> Hi Reinette,
>
> On 6/10/2026 1:41 AM, Reinette Chatre wrote:
>> Hi Ben,
>>
>> On 6/9/26 9:37 AM, Ben Horgan wrote:
>>> On 6/9/26 16:28, Reinette Chatre wrote:
>>>> On 6/9/26 3:10 AM, Ben Horgan wrote:
>>>>> On 6/8/26 17:16, Reinette Chatre wrote:
>>
>>
>>>>> I don't see the advantage of emulating MB with both MIN and MAX. Just going by
>>>>> the MPAM specification, a system keeping MIN at 0 and just setting MAX from MB,
>>>>> (MIN=0, MAX=MB) should behave the same as one always setting both, (MIN=MB,
>>>>> MAX=MB). In the MIN=0 case there is never any high preference traffic and in the
>>>>> MIN=MAX_MB case there is never any medium preference traffic. It seemed best to
>>>>> not rely on any platform specific heuristics to try and guess what's better and
>>>>> just wait til the time we could support MB_MIN in resctrl (and leave the
>>>>> decision up to the user). My expectation was that this would be the simplest
>>>>> course of action.
>>>>
>>>> This sounds fair. Two observations:
>>>> - The hierarchy exposed by resctrl may be different on systems that have the "same"
>>>> controls.
>>>> For example, on an MPAM system (if I understand correctly) the user may see:
>>>> info/
>>>> └── MB/
>>>> └── resource_schemata/
>>>> ├── MB/
>>>> │ └── MB_MAX/
>>>> └── MB_MIN/
>>>
>>> Yes, this matches my understanding.
>>>
>>>>
>>>> Compared with a possible implementation on Intel that looks like:
>>>> info/
>>>> └── MB/
>>>> └── resource_schemata/
>>>> ├── MB/
>>>> │ └── MB_OPT/
>>>> ├── MB_MAX/
>>>> └── MB_MIN/
>>>
>>> Not sure if my understanding is correct here...
>>> In the kernel today is it rdt max that backs MB? (Ignoring the sw controller)
>>
>> resctrl does not have support for the RDT "MAX" controller yet. Since resctrl was
>> created as part of enabling RDT the resctrl MB control maps exactly to RDT's
>> original percentage based memory delay value that is an approximate. Newer hardware
>> support three controls: optimal, minimum, and maximum. These controls have finer
>> granularity than what the default percentage based control supports so emulation
>> is needed.
>> So far I assumed that on these systems the default MB control would be emulated
>> by the new "optimal" control but after these exchanges I can see there being an
>> argument for it to be emulated by the new "maximum" control also. Apart from it
>> implying a cap there is also the idea that the "maximum" control is more likely to
>> be available on all platforms.
>>
>
> Regarding the region-aware RDT case, I wonder if we actually need to emulate the
> legacy MB control using MB_MAX. First, when we refer to the "legacy" for region-aware
> RDT, I suppose it corresponds to "MSR access" plus "percentage-based control".
>
> case 1:
> If the platform does not support region-aware RDT (no ERDT table is detected),
> the MB is naturally the "legacy" MB, and the info directory would look like:
>
> info
> └── MB
> └── resource_schemata
> └── MB
>
> case 2:If the platform supports region-aware RDT (i.e., ERDT parsing succeeds),
> then the structure looks like below:
>
> info
> └── MB
> └── resource_schema
> └── MB <=== legacy
> └── MB_REGION0_OPT
> └── MB_REGION1_OPT
> └── MB_REGION0_MIN
> └── MB_REGION1_MIX
> └── MB_REGION0_MAX
> └── MB_REGION1_MAX
>
> The OS supports runtime switching between the legacy MB and
> region-aware MB, via a MB scope control like:
> /sys/fs/resctrl/info/MB/resource_schemata/mode
> [legacy] native
> If the user wants to use the legacy interface, the system
> will fall back to the default [MSR-based, percentage]; if the
> user wants to use the new interface, the region-aware interfaces
> will be used. Since the two modes are mutually exclusive, there
> seems to be no need to use MB_REGION0_MAX to emulate legacy MB.
- This implies that all current and future ERDT capable systems will keep
supporting MSR access with the legacy "percentage based control". Is this
accurate? What will behavior be on an ERDT system that does not support
MSR access with the percentage-based control?
- It is not obvious to me what you plan to have as default interface -
I believe this should be "legacy" interface to ensure this will not
break user space. resctrl should only switch to "native" after user
demonstrates (by switching) familiarity with the new interface.
Reinette
next prev parent reply other threads:[~2026-06-10 15:59 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-29 18:06 [RFC] mpam,x86,fs/resctrl: Generic schema description Proof of Concept Reinette Chatre
2026-06-02 20:23 ` Babu Moger
2026-06-02 22:56 ` Reinette Chatre
2026-06-03 1:14 ` Moger, Babu
2026-06-03 3:55 ` Reinette Chatre
2026-06-03 14:40 ` Babu Moger
2026-06-02 23:32 ` Chen, Yu C
2026-06-03 3:45 ` Reinette Chatre
2026-06-03 11:53 ` Chen, Yu C
2026-06-04 16:37 ` Reinette Chatre
2026-06-05 15:43 ` Chen, Yu C
2026-06-05 16:20 ` Reinette Chatre
2026-06-03 15:15 ` Ben Horgan
2026-06-03 19:34 ` Drew Fustini
2026-06-04 11:24 ` Ben Horgan
2026-06-04 17:38 ` Drew Fustini
2026-06-12 1:30 ` Shaopeng Tan (Fujitsu)
2026-06-17 15:29 ` Reinette Chatre
2026-06-19 1:42 ` Shaopeng Tan (Fujitsu)
2026-06-22 16:10 ` Reinette Chatre
2026-06-23 5:04 ` Shaopeng Tan (Fujitsu)
2026-06-04 21:05 ` Reinette Chatre
2026-06-05 19:35 ` Drew Fustini
2026-06-06 5:10 ` Drew Fustini
2026-06-06 5:23 ` Drew Fustini
2026-06-04 17:43 ` Reinette Chatre
2026-06-05 14:53 ` Ben Horgan
2026-06-05 15:39 ` Reinette Chatre
2026-06-05 16:37 ` Ben Horgan
2026-06-08 16:16 ` Reinette Chatre
2026-06-09 10:10 ` Ben Horgan
2026-06-09 15:28 ` Reinette Chatre
2026-06-09 16:37 ` Ben Horgan
2026-06-09 17:41 ` Reinette Chatre
2026-06-10 7:09 ` Chen, Yu C
2026-06-10 14:27 ` Chen, Yu C
2026-06-10 16:13 ` Reinette Chatre
2026-06-10 17:57 ` Chen, Yu C
2026-06-10 18:10 ` Reinette Chatre
2026-06-10 15:59 ` Reinette Chatre [this message]
2026-06-10 18:05 ` Chen, Yu C
2026-06-11 3:26 ` Chen, Yu C
2026-06-11 15:45 ` Reinette Chatre
2026-06-26 15:46 ` Chen, Yu C
2026-07-02 14:27 ` Ben Horgan
2026-07-03 9:01 ` Chen, Yu C
2026-06-10 4:31 ` Drew Fustini
2026-06-10 15:14 ` Reinette Chatre
2026-06-03 18:46 ` Luck, Tony
2026-06-04 10:02 ` Ben Horgan
2026-06-04 21:42 ` Reinette Chatre
2026-07-08 12:56 ` Chen, Yu C
2026-06-03 22:14 ` Drew Fustini
2026-06-04 21:47 ` Reinette Chatre
2026-06-05 19:48 ` Drew Fustini
2026-06-15 21:05 ` Moger, Babu
2026-06-17 17:18 ` Reinette Chatre
2026-06-17 20:29 ` Babu Moger
2026-06-24 19:08 ` Fenghua Yu
2026-06-24 22:22 ` Reinette Chatre
2026-06-25 1:26 ` Fenghua Yu
2026-06-25 15:43 ` Reinette Chatre
2026-07-10 20:59 ` Fenghua Yu
2026-07-02 13:37 ` Ben Horgan
2026-07-02 15:16 ` Fenghua Yu
2026-07-03 13:42 ` Ben Horgan
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=b1bd93b1-58b7-4967-ac33-952f8a73cb9b@intel.com \
--to=reinette.chatre@intel.com \
--cc=Dave.Martin@arm.com \
--cc=babu.moger@amd.com \
--cc=ben.horgan@arm.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=fenghuay@nvidia.com \
--cc=fustini@kernel.org \
--cc=james.morse@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peternewman@google.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
--cc=yu.c.chen@intel.com \
/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