mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Babu Moger <babu.moger@amd.com>
To: <reinette.chatre@intel.com>
Cc: <babu.moger@amd.com>, <bagasdotme@gmail.com>, <bp@alien8.de>,
	<corbet@lwn.net>, <dave.hansen@linux.intel.com>,
	<eranian@google.com>, <fenghua.yu@intel.com>, <hpa@zytor.com>,
	<linux-doc@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<mingo@redhat.com>, <tglx@linutronix.de>, <tony.luck@intel.com>,
	<x86@kernel.org>
Subject: Re: [PATCH v3 02/10] x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag
Date: Mon, 29 Aug 2022 18:25:54 -0500	[thread overview]
Message-ID: <20220829232554.53763-1-babu.moger@amd.com> (raw)
In-Reply-To: <9965edff-c558-2962-4aad-3342480026bc@intel.com>

Hi Reinette,
   Some reason this thread did not land in my mailbox. Replying using git sendmail to the thread 

>(snip modified links)

Link: https://www.amd.com/en/support/tech-docs/amd64-technology-platform-quality-service-extensions
Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537

>When you say "in this case", is there another case?

There is no other interface. It is only CXL memory device.

>
>Should "Slow Memory Bandwidth Allocation" thus be considered to be "CXL.mem
>Memory Bandwidth Allocation"? Why not call it "CXL(.mem?) Memory Bandwith
>Allocation"?

Checked with our team here. The currently only supported slow memory is CXL.mem
device. As for the naming, the "slow" memory landscape is still evolving.
While CXL.mem is the only known type supported right now. The specs says
"Slow Memory Bandwidth Allocation". So, we would prefer to keep it that way.

>
>I am not familiar with CXL so please correct me where I am
>wrong. From what I understand CXL.mem is a protocol and devices that implement
>it can have different memory types ... some faster than others. So, even if
>SMBA supports "CXL.mem" devices, could a system have multiple CXL.mem devices,
>some faster than others? Would all be configured the same with SMBA (they
>would all be classified as "slow" and throttled the same)?

I have not tested the multiple devices with different memory speeds here.
But checking with team here says it should just work the same way. It appears
that the throttling logic groups all the slow sources together and applies
the limit on them as a whole.

>
>
>
>I do not think these devices are invisible to the OS though (after
>reading Documentation/driver-api/cxl/memory-devices.rst and
>Documentation/ABI/testing/sysfs-class-cxl).
>
>Is there not a way to provide some more clarity to users on what
>would be throttled? 
>
>
>How does a user know which memory on the system is "slow memory"?
>
>It remains unclear to me how a user is intended to use this feature.
>
>How will a user know which devices/memory (if any) are being
>throttled by "SMBA"?
>
This is a new technology. I am still learning. 

Currently, I have tested with CXL 1.1 type of device. CXL 1.1 uses a simple
topology structure of direct attachment between host (such as a CPU or GPU)
and CXL device.

#numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
node 0 size: 63678 MB
node 0 free: 59542 MB
node 1 cpus:             (CPU list is emply. Node 1 have CXL memory)
node 1 size: 16122 MB    (There is 16GB CXL memory) 
node 1 free: 15627 MB    
node distances:
node   0   1
  0:  10  50
  1:  50  10

The cpu-cxl node distance is greater than cpu-to-cpu distances.

We can also verify using lsmem
 
#lsmem --output RANGE,SIZE,STATE,NODE,ZONES,BLOCK
RANGE                                 SIZE  STATE NODE  ZONES BLOCK
0x0000000000000000-0x000000007fffffff   2G online    0   None     0
0x0000000080000000-0x00000000ffffffff   2G online    0  DMA32     1
0x0000000100000000-0x0000000fffffffff  60G online    0 Normal  2-31
0x0000001000000000-0x000000107fffffff   2G online    0   None    32
0x0000001080000000-0x000000147fffffff  16G online    1 Normal 33-40

Memory block size:         2G
Total online memory:      82G
Total offline memory:      0B


We can also verify using ACPI SRAT table and memory maps.

Thanks
Babu

  reply	other threads:[~2022-08-29 23:26 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-22 13:42 [PATCH v3 00/10] x86/resctrl: Support for AMD QoS new features and bug fix Babu Moger
2022-08-22 13:42 ` [PATCH v3 01/10] x86/resctrl: Fix min_cbm_bits for AMD Babu Moger
2022-08-23 20:56   ` Reinette Chatre
2022-08-24 15:58     ` Moger, Babu
2022-08-22 13:42 ` [PATCH v3 02/10] x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag Babu Moger
2022-08-23 22:47   ` Reinette Chatre
2022-08-25 22:42     ` Moger, Babu
2022-08-26 16:17       ` Reinette Chatre
2022-08-29 23:25         ` Babu Moger [this message]
2022-08-30 16:39           ` Reinette Chatre
     [not found]             ` <3aa991a8-ac08-297d-8328-5380897f6dd9@amd.com>
2022-08-30 22:23               ` Reinette Chatre
2022-08-30 22:28             ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 03/10] x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA Babu Moger
2022-08-24 17:39   ` Reinette Chatre
2022-08-26 14:59   ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 04/10] x86/resctrl: Detect and configure Slow Memory Bandwidth allocation Babu Moger
2022-08-23 22:47   ` Reinette Chatre
2022-08-24 16:48     ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 05/10] x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag Babu Moger
2022-08-22 13:43 ` [PATCH v3 06/10] x86/resctrl: Introduce mon_configurable to detect Bandwidth Monitoring Event Configuration Babu Moger
2022-08-24 21:15   ` Reinette Chatre
2022-08-25 15:11     ` Moger, Babu
2022-08-25 15:56       ` Reinette Chatre
2022-08-25 20:44         ` Moger, Babu
2022-08-25 21:24           ` Reinette Chatre
2022-08-26 14:30             ` Babu Moger
2022-08-22 13:43 ` [PATCH v3 07/10] x86/resctrl: Add sysfs interface files to read/write event configuration Babu Moger
2022-08-24 21:15   ` Reinette Chatre
2022-08-26 16:07     ` Moger, Babu
2022-08-26 16:35       ` Reinette Chatre
2022-08-26 16:57         ` Moger, Babu
2022-08-22 13:44 ` [PATCH v3 08/10] x86/resctrl: Add the sysfs interface to read the " Babu Moger
2022-08-22 13:47   ` Bagas Sanjaya
2022-08-22 13:50     ` Moger, Babu
2022-08-22 13:55     ` Moger, Babu
2022-08-23  1:55       ` Bagas Sanjaya
2022-08-24 21:16   ` Reinette Chatre
2022-08-26 16:49     ` Moger, Babu
2022-08-26 17:34       ` Reinette Chatre
2022-08-26 18:34         ` Moger, Babu
2022-08-22 13:44 ` [PATCH v3 09/10] x86/resctrl: Add sysfs interface to write " Babu Moger
2022-08-24 21:16   ` Reinette Chatre
2022-08-26 18:17     ` Moger, Babu
2022-08-22 13:45 ` [PATCH v3 10/10] Documentation/x86: Update resctrl_ui.rst for new features 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=20220829232554.53763-1-babu.moger@amd.com \
    --to=babu.moger@amd.com \
    --cc=bagasdotme@gmail.com \
    --cc=bp@alien8.de \
    --cc=corbet@lwn.net \
    --cc=dave.hansen@linux.intel.com \
    --cc=eranian@google.com \
    --cc=fenghua.yu@intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=reinette.chatre@intel.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    /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

all inboxes | Powered by JetHome®