On Fri, 13 Mar 2026, Reinette Chatre wrote:

> Errata for Sierra Forest [1] (SRF42) and Granite Rapids [2] (GNR12)
> describe the problem that MBM on Intel RDT may overcount memory bandwidth
> measurements. The resctrl tests compare memory bandwidth reported by iMC
> PMU to that reported by MBM causing the tests to fail on these systems
> depending on the settings of the platform related to the errata.
> 
> Since the resctrl tests need to run under various conditions it is not
> possible to ensure system settings are such that MBM will not overcount.
> It has been observed that the overcounting can be controlled via the
> buffer size used in the MBM and MBA tests that rely on comparisons
> between iMC PMU and MBM measurements.
> 
> Running the MBM test on affected platforms with different buffer sizes it
> can be observed that the difference between iMC PMU and MBM counts reduce
> as the buffer size increases. After increasing the buffer size to more
> than 4X the differences between iMC PMU and MBM become insignificant.
> 
> Increase the buffer size used in MBM and MBA tests to 4X L3 size to reduce
> possibility of tests failing due to difference in counts reported by iMC
> PMU and MBM.
> 
> Signed-off-by: Reinette Chatre <[email protected]>
> Tested-by: Chen Yu <[email protected]>
> Link: 
> https://edc.intel.com/content/www/us/en/design/products-and-solutions/processors-and-chipsets/sierra-forest/xeon-6700-series-processor-with-e-cores-specification-update/errata-details/
>  # [1]
> Link: 
> https://edc.intel.com/content/www/us/en/design/products-and-solutions/processors-and-chipsets/birch-stream/xeon-6900-6700-6500-series-processors-with-p-cores-specification-update/011US/errata-details/
>  # [2]
> ---
> Changes since v2:
> - Add Chen Yu's tag.
> ---
>  tools/testing/selftests/resctrl/fill_buf.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/testing/selftests/resctrl/fill_buf.c 
> b/tools/testing/selftests/resctrl/fill_buf.c
> index 19a01a52dc1a..b9fa7968cd6e 100644
> --- a/tools/testing/selftests/resctrl/fill_buf.c
> +++ b/tools/testing/selftests/resctrl/fill_buf.c
> @@ -139,6 +139,6 @@ ssize_t get_fill_buf_size(int cpu_no, const char 
> *cache_type)
>       if (ret)
>               return ret;
>  
> -     return cache_total_size * 2 > MINIMUM_SPAN ?
> -                     cache_total_size * 2 : MINIMUM_SPAN;
> +     return cache_total_size * 4 > MINIMUM_SPAN ?
> +                     cache_total_size * 4 : MINIMUM_SPAN;
>  }
> 

Reviewed-by: Ilpo Järvinen <[email protected]>

-- 
 i.

Reply via email to