[PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery

Maciej Wieczor-Retman posted 2 patches 1 year ago
tools/testing/selftests/resctrl/Makefile      |   1 +
tools/testing/selftests/resctrl/cmt_test.c    |   4 +-
tools/testing/selftests/resctrl/mba_test.c    |   2 +
tools/testing/selftests/resctrl/mbm_test.c    |   4 +-
tools/testing/selftests/resctrl/resctrl.h     |   6 +
.../testing/selftests/resctrl/resctrl_tests.c |   9 +-
tools/testing/selftests/resctrl/resctrlfs.c   | 137 ++++++++++++++++++
7 files changed, 158 insertions(+), 5 deletions(-)
[PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Maciej Wieczor-Retman 1 year ago
Changes v8:
- Fix Makefile changes.
- Update cover letter SNC status information.
- Add Reinette's reviewed by tag to patch 2/2.

Changes v7:
- Include fallthrough in resctrlfs.c.
- Check fp after opening empty cpus file.
- Correct a comment and merge strings in snprintf().

Changes v6:
- Rebase onto latest kselftest-next.
- Looking at the two patches with a fresh eye decided to make a split
  along the lines of:
	- Patch 1/2 contains all of the code that relates to SNC mode
	  detection and checking that detection's reliability.
	- Patch 2/2 contains checking kernel support for SNC and
	  modifying the messages at the end of affected tests.

Changes v5:
- Tests are skipped if snc_unreliable was set.
- Moved resctrlfs.c changes from patch 2/2 to 1/2.
- Removed CAT changes since it's not impacted by SNC in the selftest.
- Updated various comments.
- Fixed a bunch of minor issues pointed out in the review.

Changes v4:
- Printing SNC warnings at the start of every test.
- Printing SNC warnings at the end of every relevant test.
- Remove global snc_mode variable, consolidate snc detection functions
  into one.
- Correct minor mistakes.

Changes v3:
- Reworked patch 2.
- Changed minor things in patch 1 like function name and made
  corrections to the patch message.

Changes v2:
- Removed patches 2 and 3 since now this part will be supported by the
  kernel.

Sub-Numa Clustering (SNC) allows splitting CPU cores, caches and memory
into multiple NUMA nodes. When enabled, NUMA-aware applications can
achieve better performance on bigger server platforms.

SNC support was merged into the kernel [1]. With SNC enabled
and kernel support in place all the tests will function normally (aside
from effective cache size). There might be a problem when SNC is enabled
but the system is still using an older kernel version without SNC
support. Currently the only message displayed in that situation is a
guess that SNC might be enabled and is causing issues. That message also
is displayed whenever the test fails on an Intel platform.

Add a mechanism to discover kernel support for SNC which will add more
meaning and certainty to the error message.

Add runtime SNC mode detection and verify how reliable that information
is.

Series was tested on Ice Lake server platforms with SNC disabled, SNC-2
and SNC-4. The tests were also ran with and without kernel support for
SNC.

Series applies cleanly on kselftest/next.

[1] https://lore.kernel.org/all/20240716065458.GAZpYZQhh0PBItpD1k@fat_crate.local/

Previous versions of this series:
[v1] https://lore.kernel.org/all/cover.1709721159.git.maciej.wieczor-retman@intel.com/
[v2] https://lore.kernel.org/all/cover.1715769576.git.maciej.wieczor-retman@intel.com/
[v3] https://lore.kernel.org/all/cover.1719842207.git.maciej.wieczor-retman@intel.com/
[v4] https://lore.kernel.org/all/cover.1720774981.git.maciej.wieczor-retman@intel.com/
[v5] https://lore.kernel.org/all/cover.1730206468.git.maciej.wieczor-retman@intel.com/
[v6] https://lore.kernel.org/all/cover.1733136454.git.maciej.wieczor-retman@intel.com/
[v7] https://lore.kernel.org/all/cover.1733741950.git.maciej.wieczor-retman@intel.com/

Maciej Wieczor-Retman (2):
  selftests/resctrl: Adjust effective L3 cache size with SNC enabled
  selftests/resctrl: Discover SNC kernel support and adjust messages

 tools/testing/selftests/resctrl/Makefile      |   1 +
 tools/testing/selftests/resctrl/cmt_test.c    |   4 +-
 tools/testing/selftests/resctrl/mba_test.c    |   2 +
 tools/testing/selftests/resctrl/mbm_test.c    |   4 +-
 tools/testing/selftests/resctrl/resctrl.h     |   6 +
 .../testing/selftests/resctrl/resctrl_tests.c |   9 +-
 tools/testing/selftests/resctrl/resctrlfs.c   | 137 ++++++++++++++++++
 7 files changed, 158 insertions(+), 5 deletions(-)

-- 
2.47.1
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Reinette Chatre 12 months ago
Hi Shuah,

On 12/16/24 7:18 AM, Maciej Wieczor-Retman wrote:
> 
> Sub-Numa Clustering (SNC) allows splitting CPU cores, caches and memory
> into multiple NUMA nodes. When enabled, NUMA-aware applications can
> achieve better performance on bigger server platforms.
> 
> SNC support was merged into the kernel [1]. With SNC enabled
> and kernel support in place all the tests will function normally (aside
> from effective cache size). There might be a problem when SNC is enabled
> but the system is still using an older kernel version without SNC
> support. Currently the only message displayed in that situation is a
> guess that SNC might be enabled and is causing issues. That message also
> is displayed whenever the test fails on an Intel platform.
> 
> Add a mechanism to discover kernel support for SNC which will add more
> meaning and certainty to the error message.
> 
> Add runtime SNC mode detection and verify how reliable that information
> is.
> 
> Series was tested on Ice Lake server platforms with SNC disabled, SNC-2
> and SNC-4. The tests were also ran with and without kernel support for
> SNC.
> 
> Series applies cleanly on kselftest/next.
> 

Could you please consider this series for inclusion?

Thank you very much.

Reinette
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Reinette Chatre 11 months ago
Hi Shuah,

On 12/19/24 10:35 AM, Reinette Chatre wrote:
> Hi Shuah,
> 
> On 12/16/24 7:18 AM, Maciej Wieczor-Retman wrote:
>>
>> Sub-Numa Clustering (SNC) allows splitting CPU cores, caches and memory
>> into multiple NUMA nodes. When enabled, NUMA-aware applications can
>> achieve better performance on bigger server platforms.
>>
>> SNC support was merged into the kernel [1]. With SNC enabled
>> and kernel support in place all the tests will function normally (aside
>> from effective cache size). There might be a problem when SNC is enabled
>> but the system is still using an older kernel version without SNC
>> support. Currently the only message displayed in that situation is a
>> guess that SNC might be enabled and is causing issues. That message also
>> is displayed whenever the test fails on an Intel platform.
>>
>> Add a mechanism to discover kernel support for SNC which will add more
>> meaning and certainty to the error message.
>>
>> Add runtime SNC mode detection and verify how reliable that information
>> is.
>>
>> Series was tested on Ice Lake server platforms with SNC disabled, SNC-2
>> and SNC-4. The tests were also ran with and without kernel support for
>> SNC.
>>
>> Series applies cleanly on kselftest/next.
>>
> 
> Could you please consider this series for inclusion?
> 
> Thank you very much.
> 
> Reinette
> 

(bumping visibility of request made close to holidays)

This series still applies cleanly to kselftest/next. Could you please
consider it for inclusion?

Thank you very much.

Reinette
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Shuah Khan 11 months ago
On 1/14/25 15:30, Reinette Chatre wrote:
> Hi Shuah,
> 
> On 12/19/24 10:35 AM, Reinette Chatre wrote:
>> Hi Shuah,
>>
>> On 12/16/24 7:18 AM, Maciej Wieczor-Retman wrote:
>>>
>>> Sub-Numa Clustering (SNC) allows splitting CPU cores, caches and memory
>>> into multiple NUMA nodes. When enabled, NUMA-aware applications can
>>> achieve better performance on bigger server platforms.
>>>
>>> SNC support was merged into the kernel [1]. With SNC enabled
>>> and kernel support in place all the tests will function normally (aside
>>> from effective cache size). There might be a problem when SNC is enabled
>>> but the system is still using an older kernel version without SNC
>>> support. Currently the only message displayed in that situation is a
>>> guess that SNC might be enabled and is causing issues. That message also
>>> is displayed whenever the test fails on an Intel platform.
>>>
>>> Add a mechanism to discover kernel support for SNC which will add more
>>> meaning and certainty to the error message.
>>>
>>> Add runtime SNC mode detection and verify how reliable that information
>>> is.
>>>
>>> Series was tested on Ice Lake server platforms with SNC disabled, SNC-2
>>> and SNC-4. The tests were also ran with and without kernel support for
>>> SNC.
>>>
>>> Series applies cleanly on kselftest/next.
>>>
>>
>> Could you please consider this series for inclusion?
>>
>> Thank you very much.
>>
>> Reinette
>>
> 
> (bumping visibility of request made close to holidays)
> 
> This series still applies cleanly to kselftest/next. Could you please
> consider it for inclusion?
> 
> Thank you very much.
> 
> Reinette
> 

Thank you for bumping it up to top of my Inbox.
I will apply these for 6.14-rc1 now.

thanks,
-- Shuah
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Reinette Chatre 11 months ago

On 1/14/25 3:25 PM, Shuah Khan wrote:
> 
> Thank you for bumping it up to top of my Inbox.
> I will apply these for 6.14-rc1 now.
> 

Thank you very much Shuah.

Reinette
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Shuah Khan 11 months ago
On 1/14/25 16:28, Reinette Chatre wrote:
> 
> 
> On 1/14/25 3:25 PM, Shuah Khan wrote:
>>
>> Thank you for bumping it up to top of my Inbox.
>> I will apply these for 6.14-rc1 now.
>>
> 
> Thank you very much Shuah.
> 
> Reinette

Done. These two patches are now in linux-kselftest next.

thanks,
-- Shuah
Re: [PATCH v8 0/2] selftests/resctrl: SNC kernel support discovery
Posted by Maciej Wieczor-Retman 11 months ago
On 2025-01-14 at 16:58:34 -0700, Shuah Khan wrote:
>On 1/14/25 16:28, Reinette Chatre wrote:
>> 
>> 
>> On 1/14/25 3:25 PM, Shuah Khan wrote:
>> > 
>> > Thank you for bumping it up to top of my Inbox.
>> > I will apply these for 6.14-rc1 now.
>> > 
>> 
>> Thank you very much Shuah.
>> 
>> Reinette

Thanks for bumping up the series :)

>
>Done. These two patches are now in linux-kselftest next.
>
>thanks,
>-- Shuah

And thank you for merging it :)

-- 
Kind regards
Maciej Wieczór-Retman